Migrer de mod_php / php5 à php-fpm / php7 sous Ubuntu

Dans la continuité de ce que j'ai fait hier, voici le résumé des étapes que j'ai suivies pour passer de PHP5 / mod_php à PHP7 / php-fpm sous Ubuntu et Apache2.

D'abord installer le PPA qui va bien sudo add-apt-repository ppa:ondrej/php

Ensuite faire sudo apt-get update && sudo apt-get remove php5-* && sudo apt-get --purge autoremove (assez bourrin mais au moins je suis sûr de ne pas être embêté au moment d'installer php7)

Ne pas oublier d'arrêter php5-fpm le cas échéant.

Ensuite sudo apt-get install php7.0

Arrêter apache et php-fpm avec sudo service apache2 stop && sudo service php7.0-fpm stop

Éditer le fichier /etc/php/7.0/fpm/pool.d/www.conf et y mettre listen = 127.0.0.1:9000 - cf l'article de SebOss

Ne pas oublier d'installer les modules de PHP dont on peut avoir besoin à coup de sudo apt-get install php7.0-le_module_voulu

Si mod_fastcgi n'est pas installé, faire sudo apt-get install libapache2-mod-fastcgi puis éditer le fichier /etc/apache2/mods-available/fastcgi.conf et mettre

<IfModule mod_fastcgi.c>
FastCGIExternalServer /usr/sbin/php-fpm7.0 -host 127.0.0.1:9000
AddHandler php7-fastcgi .php

Action php7-fastcgi /usr/sbin/php-fpm.fcgi
ScriptAlias /usr/sbin/php-fpm.fcgi /usr/sbin/php-fpm7.0

<Directory /usr/sbin>
Options ExecCGI FollowSymLinks
SetHandler fastcgi-script
Order allow,deny
Allow from all
</Directory>
</IfModule>

Faire sudo a2enmod actions && sudo a2enmod fastcgi

Éditer le fichier /etc/apache2/apache2.conf et commenter les lignes ayant des "AllowOverride None" et "require all granted"

Faire sudo service php7.0-fpm start && sudo service apache2 start

Bonus

Pour Symfony2, ne pas oublier d'installer php7.0-xml, php7.0-intl, php7.0-json et le module correspondant à la base de données de son choix. Ne pas oublier non plus d'indiquer dans les php.ini de cli et fpm la directive correspondant à la timezone.

Pour phpMyAdmin, les étapes sont les suivantes, d'après ce post de StackOverflow - réponse du 23 décembre 2015 à 18h08 de Robin Wilson : sudo add-apt-repository ppa:nijel/phpmyadmin && sudo apt-get update && sudo apt-get dist-upgrade

Si vous avez suivi à la lettre ce que j'ai écrit plus haut, phpMyAdmin a été désinstallé, il faut donc faire sudo apt-get install phpmyadmin. Vous obtiendrez une erreur lors de la reconfiguration, choisissez "ignorer". Ensuite, faites mysql -uutilisateur -pmot_de_passe < /usr/share/phpmyadmin/sql/create_tables.sql. Enfin, ne pas oublier d'installer php-gettext par sudo apt-get install php-gettext