Alors que PHP vient de sor­tir il y a dix jours ses deux der­nières ver­sions mineures (PHP 7.1.14 et PHP 7.2.2), nous modi­fions de notre côté la façon dont vous allez pou­voir confi­gu­rer vos sites PHP sur always­da­ta. En route vers plus de sim­pli­ci­té.

simplify the simpsons GIF @Giphy

Ruby, Python, Node.js… et PHP alors ?

L’une des par­ti­cu­la­ri­tés de votre héber­ge­ment chez always­da­ta est la diver­si­té des tech­no­lo­gies aux­quelles vous pou­vez avoir accès. De façon trans­pa­rente et info­gé­rée dès les offres mutua­li­sées, héber­ger vos solu­tions doit res­ter simple. Côté inter­pré­teurs, vous dis­po­sez d’un vaste choix comme Ruby, Python, Node.js, etc. et — bien enten­du — PHP.

Historiquement, ce choix se pré­sente dans votre inter­face de confi­gu­ra­tion d’un site comme type Apache stan­dard.

Site type Apache standard - Écran de Configuration

La rai­son est tech­nique : les sites en PHP sont ser­vis via le module mod_fcgid d’une ins­tance Apache. Les autres inter­pré­teurs (WSGI, Rails, ou les pro­grammes uti­li­sa­teurs) uti­lisent leurs propres ser­veurs HTTP. C’est notre orches­tra­teur alproxy qui se charge de l’exécution et de diri­ger le traf­fic HTTP vers les pro­ces­sus concer­nés.

Mais une implé­men­ta­tion tech­nique ne fait pas une bonne UX (loin de là). Mentionner Apache pour les sites PHP, uni­que­ment parce qu’il s’agit du ser­veur impli­qué, est contre-intui­tif. Alors nous avons déci­dé de modi­fier quelque peu les choix de type d’instances, pour plus de cohé­rence. Désormais, vos sites et ser­vices PHP seront ser­vis sous le type PHP, tout sim­ple­ment.

Site type PHP - Écran de Configuration

Le double effet kiss cool

Plus qu’un chan­ge­ment cos­mé­tique, c’est une modi­fi­ca­tion struc­tu­relle. À l’heure actuelle, un site Python, Ruby (ou Rails), Node.js ou Elixir vous laisse le choix de la ver­sion de l’interpréteur à uti­li­ser, pour chaque site. Il n’y a aucune rai­son que PHP fasse excep­tion à la règle. Vous pour­rez donc, pour chaque site, choi­sir la ver­sion de PHP à uti­li­ser. Vous pour­rez éga­le­ment per­son­na­li­ser, pour chaque ins­tance, la confi­gu­ra­tion du php.ini asso­cié.

Bien enten­du, les réglages des ver­sions par défaut dis­po­nibles dans la sec­tion Environnement de votre inter­face ne changent pas, et vous gar­dez la pos­si­bi­li­té de défi­nir une ver­sion et un php.ini glo­ba­le­ment.

De cette façon, vous gagnez en sou­plesse, et vous pour­rez, sur le même compte, héber­ger des ins­tances de sites PHP très dif­fé­rentes dans leurs réglages et dans leurs ver­sions. C’est aus­si ça, le confort d’always­da­ta.

star trek spock GIF @Giphy

Un rap­pel concer­nant la sécu­ri­té : sou­ve­nez-vous sim­ple­ment que l’isolation des conte­neurs sur nos infra­struc­tures se fait au niveau des comptes. Si vous sou­hai­tez sépa­rer vos dif­fé­rents sites ou ser­vices en les iso­lant les uns des autres, le pas­sage par le mul­ti-comptes reste obli­ga­toire. En cas de com­pro­mis­sion de l’un de vos sites, les ser­vices fonc­tion­nant sur le même compte — avec le même uti­li­sa­teur — seraient poten­tiel­le­ment vul­né­rables. Attention donc à ne pas trop abais­ser le cur­seur de sécu­ri­té en les ras­sem­blant tous sur le même compte.

Côté API

Si vous êtes utilisateur·ice de notre API, quelques chan­ge­ments vont voir le jour suite à cette modi­fi­ca­tion :

  • la créa­tion de site Apache stan­dard reste valable, même si elle est dépré­ciée. C’est un site type PHP qui sera créé, avec les ver­sions par défaut de l’interpréteur. Pensez tout-de-même à adap­ter vos scripts.
  • la liste des sites, ou un GET sur la res­source ren­ver­ra désor­mais le type PHP, et non-plus Apache stan­dard. Si vous fai­siez un test sur le type lors d’un retour de la liste, il vous fau­dra adap­ter vos scripts pour en tenir compte.

Cette nou­velle ver­sion arrive en pro­duc­tion dès jeu­di 15 février. La tran­si­tion est trans­pa­rente pour tous les sites Apache stan­dard actuels, vous n’avez rien à faire. Comme tou­jours, nous nous occu­pons de tout.

Les sites sta­tiques, ou les redi­rec­tions (qui uti­lisent aus­si une ins­tance Apache), conti­nuent de fonc­tion­ner éga­le­ment sous leurs noms propres. Et bien enten­du, si vous aviez besoin de réglages fins, le type Apache per­son­na­li­sé reste à votre dis­po­si­tion.

joel mchale my new guilty pleasure GIF @Giphy