Comment installer Apache avec PHP-FPM sur CentOS 8
- 2171
- 135
- Thomas Richard
La façon courante d'exécuter PHP avec Apache est le module MOD_PHP. Mais PHP-FPM a plusieurs avantages à ce sujet. Le PHP-FPM (FastCGI Process Manager) augmente considérablement les performances de votre environnement Apache / PHP. C'est donc utile pour les sites Web de grande charge. Ce tutoriel vous aidera à configurer PHP-FPM avec Apache sur Centos 8 et Rhel 8 Linux System.
Préalables
- Accès à la coque au système CentOS 8 avec le compte privilèges sudo.
- Compléter la configuration du serveur initial pour les systèmes nouvellement installés.
Étape 1 - Installez Apache
Les packages Apache sont disponibles dans le référentiel Appstream par défaut. Vous pouvez simplement mettre à jour le cache DNF et installer les packages de serveur Web Apache à l'aide des commandes suivantes.
sudo dnf mise à jour sudo dnf installer httpd httpd-tools mod_ssl
Le package MOD_SSL fournit la fonctionnalité pour utiliser un certificat SSL pour HTTP sécurisé. Après l'installation, activez le service HTTPD et démarrez.
sudo systemctl activer httpd sudo systemctl start httpd
Étape 2 - Installez PHP avec PHP-FPM
Le référentiel REMI contient les derniers packages PHP pour le système CentOS 8 Linux. Donc, tout d'abord, vous devez ajouter le référentiel REMI à votre système. Exécutez simplement la commande suivante pour ajouter le référentiel.
sudo dnf installer dnf-utils http: // rpms.remirepo.Net / Enterprise / REMI-Release-8.RPM
Ensuite, activez le module DNF requis pour l'installation de PHP. Ici, nous permettons le module pour installer PHP 7.4. Vous pouvez changer cela en php 7.3 ou php 7.2 selon vos exigences.
module sudo dnf réinitialiser le module dnf php sudo activer php: remi-7.4
Maintenant, installez le PHP sur votre système. Comme nous allons utiliser FastCGI Process Manager (FPM) pour cette configuration. Alors installez également le package PHP-FPM.
sudo dnf mise à jour sudo dnf installer php php-fpm php-gd php-mysqlnd
Vous pouvez également avoir besoin de plus de modules PHP, alors installez-les avant de passer ensuite. Après avoir terminé l'installation de PHP, activez le service PHP-FPM et démarrez-le.
sudo systemctl activer php-fpm sudo systemctl start php-fpm
Assurez-vous que le service PHP-FPM fonctionne.
Sudo Systemctl Status Php-fpm ● PHP-FPM.Service - Le gestionnaire de processus PHP FastCGI chargé: chargé (/ usr / lib / systemd / system / php-fpm.service; désactivé; Vendor Preset: Disabled) Active: Active (Running) Depuis le lundi 2019-12-09 21:44:57 PST; 1h 24min il y a Pid principal: 29280 (PHP-FPM) Statut: "Processus actifs: 0, inactif: 5, demandes: 3, lent: 0, trafic: 0req / sec" Tâches: 6 (limite: 10321) Mémoire: 24.6m cgroup: / système.tranche / php-fpm.Service ├fique.Conf) ├─29281 PHP-FPM: Pool www ├fique : 44: 57 Tecadmin.exemple.com Systemd [1]: Démarrage du gestionnaire de processus PHP FastCGI… Dec 09 21:44:57 Tecadmin.exemple.com systemd [1]: a commencé le gestionnaire de processus PHP FastCGI.
Étape 3 - Configurer PHP-FPM
À cette étape, vous avez installé tous les packages requis. Commençons le processus de configuration. Tout d'abord, modifiez le fichier de configuration PHP-FPM pour Apache:
sudo vim / etc / php-fpm.d / www.confli
Faire les modifications comme ci-dessous. Les dernières versions d'Apache peuvent se connecter à la prise à l'aide d'un proxy. Alors assurez-vous que l'écoute est définie sur un fichier de socket.
Ensuite définir l'utilisateur et regrouper le même serveur Apache en utilisant. Si vous avez besoin de connecter FPM à partir d'un système distant Changement.Autorisé_CLIENTS à LAN IP au lieu de 127.0.0.1.
; Écouter = 127.0.0.1: 9000 écouter = / run / php-fpm / www.Sock User = Apache Group = Apache écouter.ALLIMED_CLIENTS = 127.0.0.1 écouter.propriétaire = Apache écouter.Groupe = Apache Écoute.mode = 0660 pm = dynamique1234567891011 | ; Écouter = 127.0.0.1: 9000Listen = / Run / Php-fpm / www.chaussette utilisateur = apachegroup = apache écouter.ALLIMED_CLIENTS = 127.0.0.1 coquette.propriétaire = apachesten.groupe = apachesten.mode = 1660pm = dynamique |
Après avoir apporté des modifications à redémarrer le service PHP-FPM pour appliquer les modifications.
sudo systemctl redémarrer php-fpm
Étape 4 - Créer Apache VirtualHost
Maintenant, le moment est de configurer Apache pour utiliser PHP-FPM pour le traitement des fichiers PHP. Voici deux options, soit vous utilisez FPM par défaut pour tous les hôtes virtuels, soit vous pouvez spécifiquement configurer l'hôte virtuel pour utiliser FPM. De cette façon, d'autres hôtes virtuels ne seront pas affectés.
Pour cet exemple, je configure FPM pour un hôte virtuel spécifique uniquement. Donc, fichier de configuration modifié dans l'éditeur de texte:
sudo vim / etc / httpd / confre.d / exemple.com.confli
Maintenant ajouté la configuration proxy à l'aide d'un fichier de socket. A également configuré tout le script PHP pour utiliser le gestionnaire FPM pour l'exécution.
ServerAdmin Admin @ Exemple.com documentroot / var / www / html servername Exemple.com servealias www.exemple.com # Déclaration de proxy # Nous devons déclarer un paramètre ici (peu importe lequel) ou # Il n'enregistrera pas le proxy à l'avance Proxyset DisableReUse = OFF # Remarque: Si vous configurez PHP-FPM pour utiliser "PM = onDemand "#Then Use" proxyset DisableReUse = on "Sethandler proxy: fcgi: // php-fpm errorlog journaux / exemple.com-error.Journal des journaux / exemple de journal Customlog.com-accès.journal combiné12345678910111213141516171819202122232425 |
Enregistrez le fichier de configuration de l'hôte virtuel et rechargez Apache pour appliquer les modifications.
sudo systemctl redémarrer httpd
Étape 5 - Activer les règles du pare-feu
Votre serveur est prêt à servir l'application. S'il y a un pare-feu activé sur votre système, assurez-vous que les ports Apache sont ouverts à l'accès à partir de systèmes distants.
Les commandes suivantes ouvriront les ports requis pour vous.
Sudo Firewall-Cmd --zone = public --permanent --add-Service = Http sudo Firewall-Cmd --zone = public --permanent --add-Service = https sudo firewall-cmd --reload
Étape 6 - Configuration du test
Terminé. Pour tester l'environnement, créez un script PHP avec phpinfo () fonction. Placez ce fichier à la racine du document de votre serveur. Utilisez la commande ci-dessous pour le faire.
écho ""> / var / www / html / info.php
Puis accéder aux informations.PHP à l'aide de l'adresse IP du serveur (pour VirtualHost par défaut) pour votre domaine configuré dans Apache VirtualHost.
http: // localhost / info.php
Conclusion
Vous avez configuré avec succès un Apache avec PHP-FPM sur votre système CentOS 8 ou RHEL 8 Linux. Vous pouvez désormais héberger un site Web à partir de votre serveur.
- « Comment installer Apache avec PHP-FPM sur Debian 10
- Comment ignorer les modifications de l'autorisation du fichier GIT »