Apache est gratuit, open source et le serveur Web le plus utilisé, en grande partie parce qu'il est capable de fonctionner dans différents environnements. Apache a la capacité de gérer différents processus pour répondre à une demande de protocole HTTP, notamment le traitement de la demande, l'ouverture d'un socket et la gestion de nouveaux événements.
Ces tâches sont effectuées par le module Apache Multi-Processing (MPM).
Apache MPM (Multi-Processing Modules) sont des modules Apache utilisés pour créer des processus enfants dans Apache. Ils permettent de traiter plus de requêtes simultanément en transférant une partie du travail de traitement aux threads d'écoute, libérant ainsi des threads de travail pour traiter de nouvelles requêtes. L'utilisation de PHP-FPM avec MPM Event dans un serveur Web Apache réduit le temps de chargement de la page Web et permet au serveur Web de gérer davantage de connexions simultanées.
Dans ce tutoriel, nous allons apprendre à configurer Apache avec MPM Event et PHP-FPM sur Ubuntu 20.04.
Prérequis
- Un nouveau VPS Ubuntu 20.04 sur la plate-forme cloud Atlantic.Net
- Un mot de passe root configuré sur votre serveur
Étape 1 – Créer un serveur cloud Atlantic.Net
Tout d'abord, connectez-vous à votre serveur Atlantic.Net Cloud. Créez un nouveau serveur en choisissant Ubuntu 20.04 comme système d'exploitation avec au moins 1 Go de RAM. Connectez-vous à votre serveur cloud via SSH et connectez-vous à l'aide des informations d'identification mises en évidence en haut de la page.
Une fois que vous êtes connecté à votre serveur Ubuntu 20.04, exécutez la commande suivante pour mettre à jour votre système de base avec les derniers packages disponibles.
apt-get update -y
Étape 2 – Installer le serveur LAMP
Commencez par installer le serveur Web Apache, MariaDB et PHP avec la commande suivante :
apt-get install apache2 mariadb-server php7.4 libapache2-mod-php7.4 -y
Une fois le serveur LAMP installé, vous pouvez passer à l'étape suivante.
Étape 3 - Changer le module de multi-traitement
Avant de commencer, vous devrez basculer le MPM de pre-fork à event et supprimer la connexion du module php7.4 entre PHP et Apache.
Tout d'abord, arrêtez le service Apache et désactivez le module php7.4 avec la commande suivante :
systemctl stop apache2 a2dismod php7.4
Ensuite, désactivez le module Pre-fork MPM avec la commande suivante :
a2dismod mpm_prefork
Ensuite, activez le module Event MPM avec la commande suivante :
a2enmod mpm_event
Une fois que vous avez terminé, vous pouvez passer à l'étape suivante.
Étape 4 – Configurer Apache pour utiliser le gestionnaire de processus FastCGI
Dans cette section, nous allons installer le processeur PHP-FPM et les modules proxy afin qu'Apache puisse communiquer avec PHP.
Tout d'abord, installez le PHP-FPM avec la commande suivante :
apt-get install php7.4-fpm -y
Une fois installé, vous devrez installer la bibliothèque libapache2-mod-fcgid afin de communiquer Apache et PHP.
Vous pouvez l'installer avec la commande suivante :
apt-get install libapache2-mod-fcgid -y
Une fois installé, vous devrez activer le module PHP-FPM, Proxy et FastCGI Proxy dans le serveur Web Apache.
Vous pouvez les activer avec la commande suivante :
a2enconf php7.4-fpm a2enmod proxy a2enmod proxy_fcgi
Ensuite, redémarrez le service Apache pour appliquer les modifications :
systemctl restart apache2
Maintenant, vérifiez le module MPM avec la commande suivante :
apachectl -M | grep 'mpm'
Vous devriez obtenir le résultat suivant :
mpm_event_module (shared)

Ensuite, vérifiez le module Proxy et FastCGI Proxy avec la commande suivante :
apachectl -M | grep 'proxy'
Vous devriez obtenir le résultat suivant :
proxy_module (shared) proxy_fcgi_module (shared)

Étape 5 - Vérifier le gestionnaire de processus FastCGI
À ce stade, le serveur Web Apache est configuré pour utiliser le gestionnaire de processus FastCGI. Il est temps de vérifier si PHP utilise le gestionnaire de processus FastCGI.
Commencez par créer un fichier info.php dans le répertoire racine du document Apache :
nano /var/www/html/info.php
Ajoutez les lignes suivantes :
<?php phpinfo(); ?>
Enregistrez et fermez le fichier lorsque vous avez terminé.
Ensuite, ouvrez votre navigateur Web et tapez l'URL http://your-server-ip/info.php. Vous devriez voir l'écran suivant :

Dans la page ci-dessus, vous devriez voir que le serveur Web Apache utilise FPM/FastCGI.
Conclusion
Dans le guide ci-dessus, nous avons appris à configurer Apache avec MPM Event et PHP-FPM sur Ubuntu 20.04. Désormais, PHP-FPM gérera le code PHP et améliorera l'utilisation globale des ressources. Essayez-le sur votre compte d'hébergement VPS d'Atlantic.Net !