Aujourd’hui, le serveur passe à PHP7.1 !
Ce tutoriel aborde le passage de PHP7.0 à PHP7.1 sur une Debian stable (Jessie).
L’opération prend une vingtaine de minutes, en comptant les opérations de vérifications (pre-flight checks en anglais).
La retraite PHP chez Dotdeb
Guillaume Plessis, qui maintient Dotdeb, a récemment annoncé que pour des raisons personnelles et professionnelles, Dotdeb ne fournira plus les mises à jour de PHP passé la version 7.0.
Je comprends sa décision : c’est chronophage et il faut pouvoir être en mesure de répondre aux commentaires et attentes d’une foule de personnes qui utilisent ce dépôt. Pas toujours simple. Merci Guillaume pour tout le travail accompli !
Vérification de la compatibilité PHP7.x sous WordPress
Si votre site tourne sous WordPress, il existe un plugin très utile – PHP Compatibility Checker – qui permet de vérifier que la mise à jour n’impactera pas votre site.
Je pense notamment aux plugins dont certains peuvent être assez vieillots et dont les fonctions peuvent être maintenant obsolètes.
Lancez-le avant de faire la mise à jour. S’il rapporte des warnings, ce n’est pas un problème. Si ce sont des erreurs par contre, mieux vaut y jeter un oeil avant de mettre à jour votre serveur.
Nouveau dépôt PHP : Ondrey Sury
Si l’on veut PHP7.1, il faut donc changer de dépôt et utiliser celui d’Ondrey Sury.
On installe donc ce nouveau dépôt :
apt install apt-transport-https lsb-release ca-certificates
wget -O /etc/apt/trusted.gpg.d/php.gpg https://packages.sury.org/php/apt.gpg
echo "deb https://packages.sury.org/php/ $(lsb_release -sc) main" >> /etc/apt/sources.list
Code language: PHP (php)
Installation de PHP7.1
On met à jour et on installe PHP7.1 :
apt update && apt upgrade
Résultat :
The following NEW packages will be installed:
libzip4 php7.1-cli php7.1-common php7.1-curl php7.1-fpm php7.1-gd php7.1-json php7.1-mbstring php7.1-mcrypt php7.1-opcache php7.1-readline php7.1-xml php7.1-xmlrpc
The following packages will be upgraded:
libssl-doc libssl1.0.2 php-common php-curl php-fpm php-gd php-mbstring php-mcrypt php-xml php-xmlrpc php7.0 php7.0-bcmath php7.0-cli php7.0-common php7.0-curl php7.0-fpm php7.0-gd php7.0-json php7.0-mbstring php7.0-mcrypt php7.0-mysql php7.0-opcache php7.0-readline php7.0-soap php7.0-xml php7.0-xmlrpc php7.0-zip
Code language: CSS (css)
On installe les paquets manquants :
php7.1-mysql php7.1-soap
Code language: CSS (css)