Installation de PHP 8.1 sur Debian 11 pour son serveur Web

I. Présentation

Dans ce tutoriel, nous allons apprendre à installer PHP 8.1 sur Debian 11 afin de profiter de la dernière version du moteur PHP sur notre machine Linux. Actuellement, Debian 11.3 (dernière version à ce jour) installe PHP 7.4 lorsque l'on installe PHP. Néanmoins, la date de fin du support de cette version approche à grands pas donc il faut commencer à se tourner vers une version plus récente, en l'occurrence PHP 8.1, qui est une évolution de PHP 8.0.

Si vous souhaitez installer PHP 8.1 sur Debian, alors vous êtes au bon endroit. L'opération est simple et consiste à ajouter un dépôt pour accéder aux paquets PHP 8.1 et ses extensions.

II. Installation des dépendances

Avant de parler de l'installation de PHP 8.1, quelques paquets sont à installer. Commençons par mettre à jour le cache des paquets :

sudo apt-get update

Puis, on installe ces fameuses dépendances même si certains paquets sont peut être déjà présents sur votre machine. S'il y a une mise à jour, elle sera installée.

sudo apt-get install ca-certificates apt-transport-https software-properties-common wget curl lsb-release

Voilà, vous êtes prêt à ajouter le dépôt qui va permettre de récupérer les paquets associés à PHP 8.1.

III. Ajouter le dépôt pour PHP 8.1

On va s'appuyer sur le dépôt "packages.sury.org" que l'on va ajouter à notre machine grâce à la commande Curl afin d'installer la clé de ce référentiel.

curl -sSL https://packages.sury.org/php/README.txt | sudo bash -x

On actualise le cache des paquets pour prendre en compte les paquets disponibles sur ce dépôt.

sudo apt-get update

Dès à présent, nous pouvons passer à l'installation de PHP 8.1 sur Debian 11 !

IV. Installation de PHP 8.1

Généralement, on installe PHP en précisant le nom "php" mais cette fois-ci, on va spécifier le numéro de version. Ce qui donne :

sudo apt-get install php8.1

Cette commande va permettre d'installer PHP 8.1 sur le serveur Linux. Pour ajouter l'intégration de PHP à Apache dans le cadre de la mise en place d'un serveur Web, il faudra ajouter ce paquet supplémentaire :

sudo apt-get install libapache2-mod-php8.1

Redémarrez Apache pour prendre en charge ce nouveau module :

sudo systemctl restart apache2

À partir de là, PHP 8.1 est installé ! Vous pouvez vous en assurer avec la commande suivante :

php -v

Le résultat retourné met bien en évidence la présence de PHP 8.1 dans sa dernière version mineure :

Debian 11 PHP 8.1

Si vous utilisez plutôt Nginx, installez plutôt ces deux paquets supplémentaires pour bénéficier du gestionnaire de processus FastCGI :

sudo apt-get install php8.1-fpm php8.1-cli

V. Installation des extensions de PHP 8.1

Bien souvent, on ne peut pas se satisfaire de PHP tout seul. Nous avons besoin d'installer des extensions PHP supplémentaires pour respecter les prérequis de l'application que l'on souhaite installer. Ces extensions permettent d'ajouter des fonctions à PHP. Par exemple, il y a une extension Curl, une extension ZIP ou encore une extension pour interagir avec un moteur de base de données (MySQL / MariaDB).

En précisant "php8.1-<nom de l'extension>" on parvient à trouver ce que l'on souhaite. Voici quelques extensions populaires que vous pouvez installer sur votre serveur :

sudo apt-get install php8.1-common php8.1-curl php8.1-bcmath php8.1-intl php8.1-mbstring php8.1-xmlrpc php8.1-mcrypt php8.1-mysql php8.1-gd php8.1-xml php8.1-cli php8.1-zip

Si vous souhaitez installer PHP-FPM pour améliorer les performances, voici comment l'installer et l'activer sur votre serveur Web Apache :

sudo apt-get install php8.1-fpm libapache2-mod-fcgid

Puis, on l'active en ajustant la configuration d'Apache :

sudo a2enmod proxy_fcgi setenvif 
sudo a2enconf php8.1-fpm

Puisque nous venons de modifier la configuration d'Apache, il faut redémarrer le service :

sudo systemctl restart apache2

Terminez par regarder l'état de PHP FPM sur votre serveur Web :

sudo systemctl status php8.1-fpm

Pour afficher la configuration complète de PHP sur votre serveur, vous pouvez créer une page PHP avec la fonction "phpinfo();" à la racine de votre serveur Web (à supprimer ensuite pour des raisons de sécurité).

Voilà, votre serveur Web sous Debian 11 bénéficie de PHP 8.1 !

Partagez cet article Partager sur Twitter Partager sur Facebook Partager sur Linkedin Partager sur Google+ Envoyer par mail

Florian Burnel

Ingénieur système et réseau, cofondateur d'IT-Connect et Microsoft MVP "Cloud and Datacenter Management". Je souhaite partager mon expérience et mes découvertes au travers de mes articles. Généraliste avec une attirance particulière pour les solutions Microsoft et le scripting. Bonne lecture.

florian has 3946 posts and counting.See all posts by florian

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée.

 

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.