Utiliser Debian et dérivées

Debian : Installer une version plus récente de PHP

Table des matières

logo-php



Introduction



Dans cet article, nous allons voir comment installer une version plus récente de PHP dans Debian.

Pour illustrer les manipulations, nous utilisons ici Debian 11.

Problématique



Si vous avez installé un serveur LAMP en suivant le tuto suivant du site ( https://www.linuxtricks.fr/wiki/debian-installer-un-serveur-lamp-apache-mysql-php ) vous avez installé la version de PHP livrée par Debian : 7.4

Nous allons voir comment ajouter un dépôt additionnel contenant d'autres versions de PHP : Celui de https://packages.sury.org/php/

Au moment où je rédige cet article, les branches PHP 5.6 à 8.2

Installation du dépôt



Comme d'habitude, les commandes sont à effectuer en root :

Code BASH :
su -

ou
Code BASH :
sudo -i


On pet à jour ses dépôts :

Code BASH :
apt update


On installe les éventuelles dépendances permettant de gérer des dépôts en HTTPS :

Code BASH :
apt install apt-transport-https lsb-release curl


On installe dans notre système la clé du dépôt sury :

Code BASH :
curl -sSLo /usr/share/keyrings/deb.sury.org-php.gpg https://packages.sury.org/php/apt.gpg


On génère le fichier de dépôt nommé sury-php.list :
Code BASH :
echo "deb [signed-by=/usr/share/keyrings/deb.sury.org-php.gpg] https://packages.sury.org/php/ $(lsb_release -sc) main" > /etc/apt/sources.list.d/sury-php.list


On rafraichit à nouveau ses dépôts :

Code BASH :
apt update



Information importante



Si vous aviez PHP de Debian installé (version 7.4 de Debian 11 à la rédaction de cet article), et que vous faites une mise à jour du système avec apt full-upgrade, vous mettrez à niveau PHP vers la version définie par le dépôt (au moment de la rédaction de l'article, il s'agit de la version 8.1).

Habituellement, dans une même version de Debian, la branche de PHP reste la même pour ne pas casser la compatibilité.

SI et SEULEMENT SI vous aviez déjà installé PHP :
- Sauvegardez vos fichiers de configuration PHP
- Désinstallez ce que vous aviez installé libapache2-mod-php :

Code BASH :
apt autoremove php* libapache2-mod-php


Une fois le ménage fait, on peut passer à l'installation de PHP.

Nous n'allons pas utiliser le nom générique php et pour les modules php-nomdumodule mais nous allons utiliser les noms avec le numéro de version.
En effet, si au cours d'une mise à jour de Debian, PHP change de branche, il faudra penser à :
- Tester son application avec cette nouvelle version
- Modifier la configuration de votre php.ini si vous aviez édité celle-ci puisque le fichier se trouve dans /etc/php/VERSION_DE_PHP/apache2/php.ini

Installation d'une version de PHP définie



Dans notre exemple, nous allons installer PHP 8.1 (dernière version stable au moment où je rédige cet article).

On procèdera ainsi pour installer le module apache, de PHP :

Code BASH :
apt install libapache2-mod-php8.1 php8.1


Pour installer les différents modules on pourra utiliser cette commande (comme d'hab avec les modules dans les accolades) :

Code BASH :
apt install php8.1-{curl,gd,intl,memcache,xml,zip,mbstring}


Si un serveur apache était en fonctionnement, n'oubliez pas de le redémarrer :

Code BASH :
systemctl restart apache2


Cette page a été vue 13488 fois