Dans cet article, nous vous avons expliqué les étapes nécessaires pour installer et configurer Apache avec PHP-FPM sur CentOS 8. Avant de poursuivre ce tutoriel, assurez-vous d'être connecté en tant que un utilisateur avec sudo
privilèges. Toutes les commandes de ce didacticiel doivent être exécutées en tant qu'utilisateur non root.
Prérequis :
- Système d'exploitation avec CentOS 8
- Adresse IPv4 du serveur avec privilèges de superutilisateur (accès racine)
- Terminal Gnome pour Linux Desktop
- Client SSH PuTTy pour Windows ou macOS
- Powershell pour Windows 10/11
- Familier avec les commandes DNF
Installer Apache avec PHP-FPM sur CentOS 8
Étape 1. La première commande mettra à jour les listes de packages pour vous assurer d'obtenir la dernière version et les dernières dépendances.
sudo dnf update
Étape 2. Installez Apache.
Apache est disponible dans les référentiels CentOS par défaut, vous êtes prêt à installer Apache :
sudo dnf install httpd httpd-tools mod_ssl
Une fois l'installation terminée, activez et démarrez le service Apache :
sudo systemctl enable httpd sudo systemctl start httpd
Vous pouvez également vérifier la version de votre serveur Web afin de vous assurer qu'il a été correctement installé :
httpd -v
Pendant l'installation, Apache crée des fichiers de service pare-feu avec des règles prédéfinies pour autoriser l'accès aux ports HTTP (80) et HTTPS (443). Les commandes suivantes ouvriront en permanence les ports nécessaires :
sudo firewall-cmd --permanent --zone=public --add-service=http sudo firewall-cmd --permanent --zone=public --add-service=https sudo firewall-cmd --reload
Étape 3. Installez PHP avec PHP-FPM.
Pour installer PHP 7.4, vous pouvez activer le dépôt Remi en exécutant la commande suivante :
sudo dnf install dnf-utils http://rpms.remirepo.net/enterprise/remi-release-8.rpm
Ensuite, activez la version appropriée :
sudo dnf module reset php sudo dnf module enable php:remi-7.4
La commande suivante installera PHP-FPM et certains des modules PHP les plus courants :
sudo dnf update sudo apt install php php-fpm php-gd php-mysqlnd
PHP utilise FPM est installé en tant que dépendance et utilisé en tant que serveur FastCGI. Démarrez le service FPM et activez-le pour qu'il démarre automatiquement au démarrage :
sudo systemctl enable --now php-fpm sudo systemctl start php-fpm
Étape 4. Configurez PHP-FPM.
Commençons le processus de configuration. Tout d'abord, modifiez le fichier de configuration PHP-FPM pour Apache :
sudo nano /etc/php-fpm.d/www.conf
; listen = 127.0.0.1:9000 listen = /run/php-fpm/www.sock user = apache group = apache listen.allowed_clients = 127.0.0.1 listen.owner = apache listen.group = apache listen.mode = 0660 pm = dynamic
Redémarrez le service php-fpm à l'aide de la commande suivante, et vous êtes prêt à partir :
sudo systemctl restart php-fpm
Étape 5. Créez Apache VirtualHost.
Maintenant, il est temps de configurer Apache pour utiliser php-fpm pour le traitement des fichiers PHP. Pour cet exemple, je configure FPM pour un hôte virtuel spécifique uniquement :
sudo nano /etc/httpd/conf.d/example.com.conf
<VirtualHost *:80> ServerAdmin example@unixlinux.online DocumentRoot /var/www/html ServerName example.com ServerAlias www.example.com # Proxy declaration <Proxy "unix:/run/php-fpm/www.sock|fcgi://php-fpm"> # we must declare a parameter in here (doesn't matter which) or # it'll not register the proxy ahead of time ProxySet disablereuse=off # Note: If you configure php-fpm to use the "pm = ondemand" #then use "ProxySet disablereuse=on" </Proxy> <FilesMatch \.php$> SetHandler proxy:fcgi://php-fpm </FilesMatch> ErrorLog logs/example.com-error.log CustomLog logs/example.com-access.log combined </VirtualHost>
Enregistrez le fichier de configuration de l'hôte virtuel et rechargez Apache pour appliquer les modifications :
sudo systemctl restart httpd
Étape 6. Configuration du test.
Pour tester l'environnement, créez un script PHP avec la fonction phpinfo(). Placez ce fichier à la racine du document de votre serveur. Utilisez la commande ci-dessous pour cela :
echo "<?php phpinfo(); ?>" > /var/www/html/info.php
Ensuite, accédez à info.php en utilisant l'adresse IP du serveur (pour VirtualHost par défaut) pour votre domaine configuré dans Apache VirtualHost.
http://localhost/info.php
C'est tout ce que vous devez faire pour installer LAMP Stack sur CentOS 8. J'espère que vous trouverez cette astuce rapide utile. Si vous avez des questions ou des suggestions, n'hésitez pas à laisser un commentaire ci-dessous.