Passer de PHP 5 à PHP 7 avec Apache ou Nginx

L’axe choisi pour la version 7 de PHP est la performance avec une compatibilité 64 bits, une vitesse d’exécution jusqu’à deux fois supérieure et une consommation de la mémoire vive réduite au deux tiers.

Disponible d’origine sur Debian 9, une mise à jour manuelle est nécessaire pour les distributions antérieures.
Comme avant toute manipulation importante, il est recommandé de faire une sauvegarde de votre serveur (dans le cas d’une machine virtuelle, en faisant snapshot par exemple)
Voici les différentes étapes pour mettre à jour votre version de php sur Debian 8 (Jessie) :

Dépôt dotdeb

Afin de disposer de paquets plus récents que les paquets disponibles d’origine sur Debian 8, nous rajoutons les dépôts dotdeb au système :


Suppression de PHP 5

Avant d’installer PHP 7, on procède à l’arrêt et la désinstallation de PHP 5 :


Installation de PHP 7

L’installation de PHP 7 diffère selon que votre serveur fonctionne avec Nginx ou avec Apache :

On peut maintenant vérifier votre version de PHP avec la commande suivante :

sortie attendue :


Configuration

Tout comme l’installation, la configuration de PHP7 varie selon que vous utilisez Nginx ou Apache.
Avec Apache, le module PHP (libapache2-mod-php7.0) s’active automatiquement alors que sous Nginx (php7.0-fpm), il faut ajuster la configuration de PHP-FPM pour pointer vers la nouvelle socket, qui passe de /var/run/php5-fpm.sock à /run/php/php7.0-fpm.sock.

La configuration présentée ci-dessous propose des ajustements que vous pourrez ajuster selon votre cas d’utilisation.

La configuration est terminée, il est juste important de savoir que les fichiers de configuration de PHP sont localisés dans /etc/php/7.0/fpm/ dans le cas de Nginx, et dans /etc/php/7.0/apache2/ dans le cas d’Apache.