Debian 9 livré avec PHP version 7.0 atteindra bientôt la fin de sa durée de vie pour le support et ne recevra plus de mises à jour de sécurité.
Dans ce tutoriel, nous vous guiderons à travers les étapes d'installation de PHP 7.2 sur un serveur Debian 9. Nous vous montrerons également comment configurer Apache et Nginx pour exécuter PHP.
Prérequis #
Avant de commencer ce didacticiel, assurez-vous que vous êtes connecté en tant qu'utilisateur avec des privilèges sudo.
Installer PHP 7.2 sur Debian 9 #
Les étapes suivantes décrivent comment installer PHP 7.2 à l'aide du référentiel Ondrej Sury.
-
Tout d'abord, mettez à jour le
apt
répertoriez les packages et installez les dépendances nécessaires pour ajouter un nouveau référentiel via HTTPS :sudo apt update
sudo apt install apt-transport-https ca-certificates curl software-properties-common
-
Commencez par importer la clé GPG du référentiel à l'aide de la commande curl suivante :
curl -fsSL https://packages.sury.org/php/apt.gpg | sudo apt-key add -
Ajoutez le référentiel d'ondrej à la liste des référentiels de logiciels de votre système en tapant :
sudo add-apt-repository "deb https://packages.sury.org/php/ $(lsb_release -cs) main"
-
Maintenant que le référentiel d'ondrej est activé sur notre système, nous pouvons installer PHP en spécifiant la version que nous voulons utiliser :
sudo apt update
sudo apt install php7.2-common php7.2-cli
-
Vérifiez l'installation en exécutant la commande suivante qui imprimera la version de PHP.
php -v
PHP 7.2.8-1+0~20180725124257.2+stretch~1.gbp571e56 (cli) (built: Jul 25 2018 12:43:00) ( NTS ) Copyright (c) 1997-2018 The PHP Group Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies with Zend OPcache v7.2.8-1+0~20180725124257.2+stretch~1.gbp571e56, Copyright (c) 1999-2018, by Zend Technologies
Configurer Apache pour exécuter PHP #
Si vous utilisez Apache comme serveur Web pour installer PHP et le module Apache PHP, exécutez la commande suivante :
sudo apt install php7.2 libapache2-mod-php
Une fois les packages installés pour activer le module php7.2 il suffit de redémarrer le service Apache :
sudo systemctl restart apache2
Configurer Nginx pour exécuter PHP #
Contrairement à Apache, Nginx n'a pas de support intégré pour le traitement des fichiers PHP, nous devons donc installer une application distincte telle que PHP FPM ("fastCGI process manager") qui gérera les fichiers PHP.
Pour installer les packages PHP et PHP FPM, exécutez la commande suivante :
sudo apt install php7.2-fpm
Une fois les packages installés, le service PHP FPM démarre automatiquement. Vous pouvez vérifier l'état du service avec :
systemctl status php7.2-fpm
● php7.2-fpm.service - The PHP 7.2 FastCGI Process Manager
Loaded: loaded (/lib/systemd/system/php7.2-fpm.service; enabled; vendor preset: enabled)
Active: active (running) since Thu 2018-08-30 21:06:53 UTC; 1min 4s ago
Docs: man:php-fpm7.2(8)
Main PID: 16791 (php-fpm7.2)
Status: "Processes active: 0, idle: 2, Requests: 0, slow: 0, Traffic: 0req/sec"
CGroup: /system.slice/php7.2-fpm.service
├─16791 php-fpm: master process (/etc/php/7.2/fpm/php-fpm.conf)
├─16792 php-fpm: pool www
└─16793 php-fpm: pool www
Vous pouvez maintenant modifier le bloc de serveur Nginx de votre domaine et ajouter les lignes suivantes afin que Nginx puisse traiter les fichiers PHP :
server {
# . . . other code
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/run/php/php7.2-fpm.sock;
}
}
Redémarrez les services Nginx pour que la nouvelle configuration prenne effet :
sudo systemctl restart nginx
Installation des extensions PHP #
Nous pouvons étendre les fonctionnalités de base de PHP en installant des extensions supplémentaires. Les extensions PHP sont disponibles sous forme de packages et peuvent être facilement installées avec :
sudo apt install php-[extname]
Par exemple, si vous souhaitez installer les extensions PHP MySQL et GD, vous devez exécuter la commande suivante :
sudo apt install php7.2-mysql php7.2-gd
Après avoir installé une nouvelle extension PHP, n'oubliez pas de redémarrer le service Apache ou PHP FPM, selon votre configuration.
Test du traitement PHP #
Pour tester si votre serveur Web est configuré correctement pour le traitement PHP, créez un nouveau fichier appelé info.php dans /var/www/html
répertoire avec le code suivant :
<?php
phpinfo();
Enregistrez le fichier, ouvrez le navigateur de votre choix et visitez http://your_server_ip/info.php
Le phpinfo
imprimera des informations sur votre configuration PHP comme indiqué sur l'image ci-dessous :