{"id":1934,"date":"2018-02-12T10:30:17","date_gmt":"2018-02-12T09:30:17","guid":{"rendered":"https:\/\/blog.alwaysdata.com\/?p=1934"},"modified":"2018-02-12T10:52:19","modified_gmt":"2018-02-12T09:52:19","slug":"php-est-toujours-la","status":"publish","type":"post","link":"https:\/\/blog.alwaysdata.com\/fr\/2018\/02\/12\/php-est-toujours-la\/","title":{"rendered":"PHP est toujours l\u00e0"},"content":{"rendered":"<p>Alors que PHP vient de sortir il y&nbsp;a dix jours ses deux derni\u00e8res versions mineures (<a href=\"https:\/\/php.net\/archive\/2018.php#id2018-02-01-2\">PHP 7.1.14<\/a> et <a href=\"https:\/\/php.net\/archive\/2018.php#id2018-02-01-1\">PHP 7.2.2<\/a>), nous modifions de notre c\u00f4t\u00e9 la fa\u00e7on dont vous allez pouvoir configurer vos sites <em>PHP<\/em> sur <em>alwaysdata<\/em>. En route vers plus de simplicit\u00e9.<\/p>\n<div class=\"embed-media__giphy\" style=\"width:65%;padding-bottom:49%;\"><img decoding=\"async\" alt=\"simplify the simpsons GIF @Giphy\" src=\"https:\/\/media.giphy.com\/media\/IHnROpQICe4kE\/giphy.gif\"><\/div>\n<h2>Ruby, Python, Node.js\u2026 et PHP&nbsp;alors&nbsp;?<\/h2>\n<p>L\u2019une des particularit\u00e9s de votre h\u00e9bergement chez <em>alwaysdata<\/em> est la diversit\u00e9 des technologies auxquelles vous pouvez avoir acc\u00e8s. De fa\u00e7on transparente et infog\u00e9r\u00e9e d\u00e8s <a href=\"https:\/\/www.alwaysdata.com\/fr\/pricing\/\">les offres mutualis\u00e9es<\/a>, h\u00e9berger vos solutions doit rester simple. C\u00f4t\u00e9 interpr\u00e9teurs, vous disposez d\u2019un vaste choix comme <em>Ruby<\/em>, <em>Python<\/em>, <em>Node.js<\/em>, etc. et\u200a\u2014\u200abien entendu\u200a\u2014\u200a<em>PHP<\/em>.<\/p>\n<p>Historiquement, ce choix se pr\u00e9sente dans votre interface de configuration d\u2019un site comme <em>type Apache standard<\/em>.<\/p>\n<p><img decoding=\"async\" src=\"https:\/\/blog.alwaysdata.com\/wp-content\/uploads\/2018\/02\/Site-type-Apache-standard-fr.png\" alt=\"Site type Apache standard - \u00c9cran de Configuration\" width=\"75%\" style=\"margin:0 auto; display: block;\"><\/p>\n<p>La raison est technique&nbsp;: les sites en <em>PHP<\/em> sont servis <em>via<\/em> le module <code>mod_fcgid<\/code> d\u2019une instance Apache. Les autres interpr\u00e9teurs (<em>WSGI<\/em>, <em>Rails<\/em>, ou les <em>programmes utilisateurs<\/em>) utilisent leurs propres serveurs HTTP. C\u2019est notre orchestrateur <a href=\"https:\/\/blog.alwaysdata.com\/fr\/2016\/10\/27\/a-la-decouverte-de-notre-nouveau-reverse-proxy-alproxy-5\/\">alproxy<\/a> qui se charge de l\u2019ex\u00e9cution et de diriger le traffic HTTP vers les processus concern\u00e9s.<\/p>\n<p>Mais une impl\u00e9mentation technique ne fait pas une bonne UX (loin de l\u00e0). Mentionner <em>Apache<\/em> pour les sites <em>PHP<\/em>, uniquement parce qu\u2019il s\u2019agit du serveur impliqu\u00e9, est contre-intuitif. Alors nous avons d\u00e9cid\u00e9 de modifier quelque peu les choix de type d\u2019instances, pour plus de coh\u00e9rence. D\u00e9sormais, vos sites et services <em>PHP<\/em> seront servis sous le type <em>PHP<\/em>, tout simplement.<\/p>\n<p><img decoding=\"async\" src=\"https:\/\/blog.alwaysdata.com\/wp-content\/uploads\/2018\/02\/Site-type-PHP-fr.png\" alt=\"Site type PHP - \u00c9cran de Configuration\" width=\"75%\" style=\"margin:0 auto; display: block;\"><\/p>\n<h2>Le double effet <em>kiss cool<\/em><\/h2>\n<p>Plus qu\u2019un changement cosm\u00e9tique, c\u2019est une modification structurelle. \u00c0&nbsp;l\u2019heure actuelle, un site <em>Python<\/em>, <em>Ruby<\/em> (ou <em>Rails<\/em>), <em>Node.js<\/em> ou <em>Elixir<\/em> vous laisse le choix de la version de l\u2019interpr\u00e9teur \u00e0&nbsp;utiliser, pour chaque site. Il n\u2019y a&nbsp;aucune raison que <em>PHP<\/em> fasse exception \u00e0&nbsp;la r\u00e8gle. Vous pourrez donc, pour chaque site, choisir la version de <em>PHP<\/em> \u00e0&nbsp;utiliser. Vous pourrez \u00e9galement personnaliser, pour chaque instance, la configuration du <code>php.ini<\/code> associ\u00e9.<\/p>\n<p>Bien entendu, les r\u00e9glages des versions <em>par d\u00e9faut<\/em> disponibles dans la section <em>Environnement<\/em> de votre interface ne changent pas, et vous gardez la possibilit\u00e9 de d\u00e9finir une version et un <code>php.ini<\/code> globalement.<\/p>\n<p>De cette fa\u00e7on, vous gagnez en souplesse, et vous pourrez, sur le m\u00eame compte, h\u00e9berger des instances de sites <em>PHP<\/em> tr\u00e8s diff\u00e9rentes dans leurs r\u00e9glages et dans leurs versions. C\u2019est aussi \u00e7a, le confort d\u2019<em>alwaysdata<\/em>.<\/p>\n<div class=\"embed-media__giphy\" style=\"width:65%;padding-bottom:48%;\"><img decoding=\"async\" alt=\"star trek spock GIF @Giphy\" src=\"https:\/\/media.giphy.com\/media\/iXTrbbYMQBCMM\/giphy.gif\"><\/div>\n<p>Un rappel concernant la <strong>s\u00e9curit\u00e9<\/strong>&nbsp;: souvenez-vous simplement que l\u2019isolation des conteneurs sur nos infrastructures se fait au niveau des comptes. Si vous souhaitez s\u00e9parer vos diff\u00e9rents sites ou services en les isolant les uns des autres, le passage par le <strong>multi-comptes<\/strong> reste obligatoire. En cas de compromission de l\u2019un de vos sites, les services fonctionnant sur le m\u00eame compte\u200a\u2014\u200aavec le m\u00eame utilisateur\u200a\u2014\u200aseraient potentiellement vuln\u00e9rables. Attention donc \u00e0&nbsp;ne pas trop abaisser le curseur de s\u00e9curit\u00e9 en les rassemblant tous sur le m\u00eame compte.<\/p>\n<h2>C\u00f4t\u00e9 API<\/h2>\n<p>Si vous \u00eates utilisateur\u00b7ice de notre API, quelques changements vont voir le jour suite \u00e0&nbsp;cette modification&nbsp;:<\/p>\n<ul>\n<li>la <strong>cr\u00e9ation<\/strong> de site <em>Apache standard<\/em> reste valable, m\u00eame si elle est d\u00e9pr\u00e9ci\u00e9e. C\u2019est un site type <em>PHP<\/em> qui sera cr\u00e9\u00e9, avec les versions par d\u00e9faut de l\u2019interpr\u00e9teur. Pensez tout-de-m\u00eame \u00e0&nbsp;adapter vos scripts.<\/li>\n<li>la <strong>liste<\/strong> des sites, ou un <strong>GET<\/strong> sur la ressource renverra d\u00e9sormais le type <em>PHP<\/em>, et non-plus <em>Apache standard<\/em>. Si vous faisiez un test sur le type lors d\u2019un retour de la liste, il vous faudra adapter vos scripts pour en tenir compte.<\/li>\n<\/ul>\n<hr>\n<p>Cette nouvelle version arrive en production d\u00e8s jeudi 15 f\u00e9vrier. La transition est transparente pour tous les sites <em>Apache standard<\/em> actuels, vous n\u2019avez rien \u00e0&nbsp;faire. Comme toujours, nous nous occupons de&nbsp;tout.<\/p>\n<p>Les sites statiques, ou les redirections (qui utilisent aussi une instance Apache), continuent de fonctionner \u00e9galement sous leurs noms propres. Et bien entendu, si vous aviez besoin de r\u00e9glages fins, le type <em>Apache personnalis\u00e9<\/em> reste \u00e0&nbsp;votre disposition.<\/p>\n<div class=\"embed-media__giphy\" style=\"width:65%;padding-bottom:36%;\"><img decoding=\"async\" alt=\"joel mchale my new guilty pleasure GIF @Giphy\" src=\"https:\/\/media.giphy.com\/media\/GPg2cYXsWDwbK\/giphy.gif\"><\/div>\n","protected":false},"excerpt":{"rendered":"<p>Alors que PHP vient de sortir il y&nbsp;a dix jours ses deux derni\u00e8res versions mineures (PHP 7.1.14 et ), nous modifions de notre c\u00f4t\u00e9 la fa\u00e7on dont vous allez pouvoir configurer vos sites PHP  sur alwaysdata. En route vers plus de simplicit\u00e9.<\/p>\n","protected":false},"author":12,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"wp_typography_post_enhancements_disabled":false,"footnotes":""},"categories":[],"tags":[229,219,142,183,150],"class_list":["post-1934","post","type-post","status-publish","format-standard","hentry","tag-fonctionnalites-fr","tag-http-fr","tag-langages-fr","tag-php-fr","tag-sites-web-fr"],"acf":[],"_links":{"self":[{"href":"https:\/\/blog.alwaysdata.com\/fr\/wp-json\/wp\/v2\/posts\/1934","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blog.alwaysdata.com\/fr\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.alwaysdata.com\/fr\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.alwaysdata.com\/fr\/wp-json\/wp\/v2\/users\/12"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.alwaysdata.com\/fr\/wp-json\/wp\/v2\/comments?post=1934"}],"version-history":[{"count":0,"href":"https:\/\/blog.alwaysdata.com\/fr\/wp-json\/wp\/v2\/posts\/1934\/revisions"}],"wp:attachment":[{"href":"https:\/\/blog.alwaysdata.com\/fr\/wp-json\/wp\/v2\/media?parent=1934"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.alwaysdata.com\/fr\/wp-json\/wp\/v2\/categories?post=1934"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.alwaysdata.com\/fr\/wp-json\/wp\/v2\/tags?post=1934"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}