PHP-FPM (FastCGI Process Manager) est une implémentation alternative de PHP FastCGI. Il fournit des fonctionnalités supplémentaires telles que la création de processus adaptatifs, utiles pour les sites. Ce tutoriel vous aidera à installer Apache avec PHP-FPM/FastCGI sur le système Ubuntu 16.04. Dans ce tutoriel, nous utilisons PHP 7.2 et configurons avec Apache en utilisant PHP-FPM et FastCGI.
- Installer Apache avec PHP et FastCGI sur CentOS/RHEL
Vous pouvez également consulter le didacticiel précédent pour configurer Apache avec plusieurs versions de PHP à l'aide de PHP-FPM/FastCGI sur les systèmes Ubuntu.
Installation d'Apache
Installez le serveur Web Apache à partir du référentiel officiel. Lancez le terminal sur votre système ou connectez-vous avec ssh aux systèmes distants. Exécutez les commandes suivantes pour installer la dernière version disponible du serveur Web Apache et du module FastCGI.
sudo apt update sudo apt install apache2 libapache2-mod-fastcgi
Installation PHP
Pour l'installation des versions PHP, nous utilisons le PPA maintenu ici. Utilisez les deux commandes ci-dessous pour ajouter le PPA à votre système.
sudo apt install python-software-properties sudo add-apt-repository ppa:ondrej/php
Et installez PHP 7.2 la dernière version disponible le jour de la rédaction de ce tutoriel. Exécutez simplement les commandes suivantes pour l'installation des packages PHP et PHP-FPM.
Remarque :- Lorsque vous utilisez PHP-FPM. Toutes les configurations des modules PHP résident dans le répertoire /etc/php/7.2/fpm. Vous pouvez en savoir plus sur l'activation/la désactivation des modules PHP.apt update sudo apt install php7.2 php7.2-fpm
Après avoir installé les packages ci-dessus, le service php7.2-fpm sera automatiquement démarré. Vous pouvez vous en assurer en tapant la commande ci-dessous sur le terminal.
sudo 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: enabl Active: active (running) since Wed 2018-02-21 10:13:28 UTC; 17s ago Docs: man:php-fpm7.2(8) Main PID: 27506 (php-fpm7.2) Status: "Processes active: 0, idle: 2, Requests: 0, slow: 0, Traffic: 0req/sec" CGroup: /system.slice/php7.2-fpm.service ├─27506 php-fpm: master process (/etc/php/7.2/fpm/php-fpm.conf) ├─27509 php-fpm: pool www └─27510 php-fpm: pool www Feb 21 10:13:28 tecadmin systemd[1]: Starting The PHP 7.2 FastCGI Process Manager... Feb 21 10:13:28 tecadmin systemd[1]: Started The PHP 7.2 FastCGI Process Manager.
Configuration Apache
Activez maintenant quelques modules nécessaires à la configuration de plusieurs versions de PHP avec Apache. Ces modules sont nécessaires pour intégrer PHP FPM et FastCGI au serveur Apache.
a2enmod actions fastcgi alias proxy_fcgi
Configurons Apache VirtualHost pour qu'il s'exécute avec FPM/FastCGI. Pour ce tutoriel, nous utilisons VirtualHost par défaut. Modifiez le fichier de configuration de l'hôte VirtualHost dans l'éditeur de texte. Vous pouvez créer un nouveau VirtualHost selon vos besoins, alors assurez-vous d'activer tout nouveau VirtualHost.
sudo vim /etc/apache2/sites-available/000-default.conf
Mettez à jour la configuration comme suit.
Apache
12345678910111213141516171819202122 |
Enregistrez vos modifications dans le fichier de configuration et redémarrez Apache pour recharger les modifications.
sudo systemctl restart apache2
Configuration du test
Créer un script PHP avec phpinfo() fonction et placez-le à la racine du document de votre serveur. Utilisez la commande ci-dessous pour le faire.
echo " <?php phpinfo(); ?> " > /var/www/html/info.php
Ouvrez un navigateur Web et accédez à info.php en utilisant l'adresse IP du serveur (pour VirtualHost par défaut) pour votre domaine configuré dans Apache VirtualHost.