{"id":3760,"date":"2019-05-19T15:29:12","date_gmt":"2019-05-19T14:29:12","guid":{"rendered":"https:\/\/olivier.hoarau.org\/?p=3760"},"modified":"2019-05-19T15:29:12","modified_gmt":"2019-05-19T14:29:12","slug":"passage-a-php7","status":"publish","type":"post","link":"https:\/\/olivier.hoarau.org\/?p=3760","title":{"rendered":"Passage \u00e0 PHP7"},"content":{"rendered":"\n<p>La derni\u00e8re version 5.2 <a href=\"https:\/\/wordpress.org\/\">WordPress<\/a>, sur lequel tourne ce blog, impose maintenant une version de PHP au moins \u00e9gale \u00e0 5.6.20 mais la version 7.X est fortement recommand\u00e9e d&rsquo;autant que les <a href=\"https:\/\/php.net\/supported-versions.php\">versions 5.X de PHP ne sont plus maintenues et support\u00e9es<\/a>. On s&rsquo;expose donc \u00e0 des risques de vuln\u00e9rabilit\u00e9s en restant avec une version 5.X. La migration devient donc quasi obligatoire, \u00e9tant h\u00e9berg\u00e9 en mutualis\u00e9 chez <a href=\"https:\/\/www.online.net\/fr\">online<\/a> il est assez facile de basculer en PHP7 comme on peut le voir <a href=\"https:\/\/documentation.online.net\/fr\/web\/web-hosting\/web-management\/configure-php?s[]=php7#versions_de_php\">ici<\/a>. En revanche il est sans doute prudent de tester avant la compatibilit\u00e9 du site, pour wordpress il existe une extension qui s&rsquo;appelle <a href=\"https:\/\/wordpress.org\/plugins\/php-compatibility-checker\/\">PHP Compatibility checker<\/a>. <\/p>\n\n\n\n<p>Cela donne quelque chose comme cela<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" width=\"474\" height=\"223\" src=\"https:\/\/i0.wp.com\/olivier.hoarau.org\/wp-content\/uploads\/php-compatibility3.jpg?resize=474%2C223&#038;ssl=1\" alt=\"\" class=\"wp-image-3761\" srcset=\"https:\/\/i0.wp.com\/olivier.hoarau.org\/wp-content\/uploads\/php-compatibility3.jpg?resize=1024%2C481&amp;ssl=1 1024w, https:\/\/i0.wp.com\/olivier.hoarau.org\/wp-content\/uploads\/php-compatibility3.jpg?resize=300%2C141&amp;ssl=1 300w, https:\/\/i0.wp.com\/olivier.hoarau.org\/wp-content\/uploads\/php-compatibility3.jpg?resize=768%2C360&amp;ssl=1 768w, https:\/\/i0.wp.com\/olivier.hoarau.org\/wp-content\/uploads\/php-compatibility3.jpg?w=1400&amp;ssl=1 1400w, https:\/\/i0.wp.com\/olivier.hoarau.org\/wp-content\/uploads\/php-compatibility3.jpg?w=948&amp;ssl=1 948w\" sizes=\"auto, (max-width: 474px) 100vw, 474px\" \/><\/figure>\n\n\n\n<p>Une fois que vous vous \u00eates rassur\u00e9, on peut basculer chez l&rsquo;h\u00e9bergeur en php 7.X, j&rsquo;ai choisi de basculer en version 7.1. J&rsquo;ai eu droit de mon c\u00f4t\u00e9 \u00e0 un beau message<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>Not Found\n\nThe requested URL \/fast-cgi-nontexistent\/index.php was not found on this server.<\/code><\/pre>\n\n\n\n<p>C&rsquo;\u00e9tait sans compter la <a href=\"https:\/\/documentation.online.net\/fr\/web\/web-hosting\/web-management\/configure-php?s[]=php7#versions_de_php\">page<\/a> cit\u00e9e plus haut qui indique qu&rsquo;il faut mettre un <\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>AddHandler ${php7} php<\/code><\/pre>\n\n\n\n<p>dans le<strong> .htaccess<\/strong> \u00e0 la racine du site, et bien en fait \u00e7a ne marche pas ! J&rsquo;ai un peu gal\u00e9r\u00e9 pour trouver et pas mal t\u00e2tonn\u00e9, voil\u00e0 donc ce qui marche chez moi avec un h\u00e9bergement mutualis\u00e9 chez online. <\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>RewriteEngine On\nRewriteCond %{HTTP:HTTPS} !on\nRewriteRule (.*) https:\/\/%{SERVER_NAME}\/$1 [QSA,L,R=301]\n&lt;FilesMatch ^wp-config.php$>\n deny from all\n&lt;\/FilesMatch>\nAddType application\/x-httpd-php7-1 .php<\/code><\/pre>\n\n\n\n<p>Pour m\u00e9moire les premiers lignes Rewrite sont pour une <a href=\"https:\/\/olivier.hoarau.org\/?p=3379\">connexion s\u00e9curis\u00e9e HTTPS<\/a>, la directive <strong>FilesMatch<\/strong> emp\u00eache d&rsquo;acc\u00e9der au fichier de configuration <strong>wp-config<\/strong>. C&rsquo;est la derni\u00e8re ligne qui permet de prendre en compte la version 7.1 de PHP. <\/p>\n\n\n\n<p>Cependant j&rsquo;ai mon extension de galeries photo  <a href=\"https:\/\/fr.wordpress.org\/plugins\/nextcellent-gallery-nextgen-legacy\/\">NextCellent Gallery<\/a> qui est un fork de la version 1.9.13 de <a href=\"https:\/\/fr.wordpress.org\/plugins\/nextgen-gallery\/\">NextGen Gallery <\/a>qui n&rsquo;a pas appr\u00e9ci\u00e9e cette migration. C&rsquo;est fonctionnel, mais esth\u00e9tiquement moche avec la non prise en compte du fichier <strong>nggallery.css <\/strong>dans le th\u00e8me <strong>Twenty Fourteen<\/strong>. Vu que le d\u00e9veloppement de <strong>NextCellent<\/strong> a l&rsquo;air totalement stopp\u00e9 depuis des ann\u00e9es, je crains que je vais devoir passer \u00e0 <strong>NextGen<\/strong> et \u00e7a risque de ne pas \u00eatre imm\u00e9diat et prendre du temps, je me garde sous le coude cette migration et je m&rsquo;excuse du d\u00e9sagr\u00e9ment visuel.  Je suis preneur \u00e9galement de toutes remarques et dysfonctionnements sur les sites du domaine<a href=\"https:\/\/www.hoarau.org\"> hoarau.org <\/a>que je n&rsquo;aurai pas vu.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>La derni\u00e8re version 5.2 WordPress, sur lequel tourne ce blog, impose maintenant une version de PHP au moins \u00e9gale \u00e0 5.6.20 mais la version 7.X est fortement recommand\u00e9e d&rsquo;autant que les versions 5.X de PHP ne sont plus maintenues et support\u00e9es. On s&rsquo;expose donc \u00e0 des risques de vuln\u00e9rabilit\u00e9s en restant avec une version 5.X. &hellip; <a href=\"https:\/\/olivier.hoarau.org\/?p=3760\" class=\"more-link\">Continuer la lecture de <span class=\"screen-reader-text\">Passage \u00e0 PHP7<\/span>  <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":4,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"ngg_post_thumbnail":0,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_post_was_ever_published":false,"_share_on_mastodon":"0"},"categories":[5,11],"tags":[],"class_list":["post-3760","post","type-post","status-publish","format-standard","hentry","category-logiciels-libres","category-vie-de-ce-blog"],"share_on_mastodon":{"url":"","error":""},"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"jetpack_shortlink":"https:\/\/wp.me\/peOjJ-YE","jetpack_likes_enabled":true,"_links":{"self":[{"href":"https:\/\/olivier.hoarau.org\/index.php?rest_route=\/wp\/v2\/posts\/3760","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/olivier.hoarau.org\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/olivier.hoarau.org\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/olivier.hoarau.org\/index.php?rest_route=\/wp\/v2\/users\/4"}],"replies":[{"embeddable":true,"href":"https:\/\/olivier.hoarau.org\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=3760"}],"version-history":[{"count":1,"href":"https:\/\/olivier.hoarau.org\/index.php?rest_route=\/wp\/v2\/posts\/3760\/revisions"}],"predecessor-version":[{"id":3762,"href":"https:\/\/olivier.hoarau.org\/index.php?rest_route=\/wp\/v2\/posts\/3760\/revisions\/3762"}],"wp:attachment":[{"href":"https:\/\/olivier.hoarau.org\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=3760"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/olivier.hoarau.org\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=3760"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/olivier.hoarau.org\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=3760"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}