GNU/Linux >> Tutoriels Linux >  >> Cent OS

Comment installer Linux, Nginx, MariaDB, PHP (pile LEMP) sur CentOS 8 / RHEL 8

Nginx est un serveur Web open source hautes performancesr . Il est connu pour sa stabilité, sa configuration très simple, son riche ensemble de fonctionnalités et sa faible consommation de ressources.

Nginx vous permet de l'utiliser comme proxy inverse, équilibreur de charge, cache HTTP et proxy de messagerie.

Cet article vous montre comment installer Nginx sur CentOS 8 / RHEL 8 avec le support PHP (via PHP-FPM) et le support MariaDB.

PHP-FPM est une implémentation alternative de PHP FastCGI. Il possède des fonctionnalités supplémentaires qui sont utiles pour les sites de toute taille, en particulier les sites les plus fréquentés.

Installer Linux

Suivez les liens pour installer un système d'exploitation Linux

LIRE : Comment installer CentOS 8 (avec capture d'écran)

LIRE : Comment installer Red Hat Enterprise Linux 8 (avec capture d'écran) ou mettre à niveau de RHEL 7 vers RHEL 8.

À présent, vous devriez avoir un système Linux prêt avec vous. Maintenant, nous allons installer Nginx, MariaDB et PHP-FPM par-dessus.

Les étapes mentionnées dans cet article ne fonctionneront que si vous avez activé l'abonnement Red Hat sur RHEL 8 ou configuré le référentiel yum local sur votre système.

Connectez-vous au système en tant qu'utilisateur root ou passez à l'utilisateur root.

$ su -

Installer Nginx

Installer Nginx à l'aide du référentiel de base

Dans RHEL 8, Nginx est disponible dans le référentiel rhel-8-for-x86_64-appstream-rpms. Nous n'avons donc pas besoin de configurer le référentiel Nginx manuellement.

Installez Nginx à l'aide de la commande YUM.

yum -y install nginx

Installez Nginx à l'aide du référentiel officiel de Nginx

Ajoutez le référentiel Nginx à votre système.

### CentOS 8 ###

cat << EOF > /etc/yum.repos.d/nginx.repo
[nginx-mainline]
name=nginx mainline repo
baseurl=http://nginx.org/packages/mainline/centos/8/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://nginx.org/keys/nginx_signing.key
EOF

### RHEL 8 ###

cat << EOF > /etc/yum.repos.d/nginx.repo
[nginx-mainline]
name=nginx mainline repo
baseurl=http://nginx.org/packages/mainline/rhel/8/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://nginx.org/keys/nginx_signing.key
EOF

Installez Nginx à partir du référentiel officiel de Nginx en désactivant temporairement le référentiel AppStream.

yum install -y nginx --disablerepo=* --enablerepo=nginx-mainline

Démarrez le service de serveur Web Nginx après l'installation.

systemctl start nginx

Vérifiez l'état du service de serveur Web Nginx à l'aide de la commande ci-dessous.

systemctl status nginx

Pare-feu

Autorisez les requêtes Web à traverser le pare-feu en exécutant les commandes ci-dessous.

firewall-cmd --permanent --add-service=http

firewall-cmd --reload

SELinux

Si vous obtenez une erreur pour SELinux sur les journaux Nginx, voici le tutoriel sur la définition de la politique SELinux pour Nginx.

Sinon, vous pouvez temporairement désactiver SELinux à l'aide de la commande suivante. Mais, nous vous suggérons de désactiver définitivement SELinux.

setenforce 0

sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config

Vérifier l'installation de Nginx

Ouvrez votre navigateur Web et visitez l'URL ci-dessous.

http://votre-adresse-ip

Nginx installé à partir du référentiel Red Hat :

Vous devriez voir la page suivante Bienvenue dans nginx sur Red Hat Enterprise Linux . Cette page vous confirme que le serveur Web Ngnix est installé avec succès sur le serveur.

Nginx installé à l'aide du référentiel officiel de Nginx :

La racine de document par défaut de Nginx sur CentOS 8 / RHEL 8 est /usr/share/nginx/html/. D'autres fichiers de configuration se trouvent dans le répertoire /etc/nginx.

Activez le service Nginx au démarrage du système.

systemctl enable nginx

Installer MariaDB

CentOS 8 / RHEL 8 est livré avec MariaDB 10.3. Installez le serveur MariaDB à l'aide de la commande yum.

Vous pouvez également installer les packages MariaDB à partir de la communauté MariaDB.

LIRE :Comment installer MariaDB sur CentOS 8 / RHEL 8

yum -y install mariadb mariadb-server

Démarrez le serveur MariaDB à l'aide de la commande suivante.

systemctl start mariadb

Activez le service MariaDB pour qu'il démarre automatiquement lors du démarrage du système.

systemctl enable mariadb

Une fois l'installation du serveur MariaDB terminée, exécutez la commande mysql_secure_installation pour sécuriser MariaDB.

Installer PHP

CentOS 8 / RHEL 8 est livré avec PHP 7.2. Installez le PHP via PHP-FPM (FastCGI Process Manager en utilisant la commande YUM.

Si vous le souhaitez, vous pouvez installer PHP 7.3 à l'aide du référentiel Remi.

LIRE : Comment installer PHP 7.3 sur CentOS 8 / RHEL 8

yum -y install php-fpm php-mysqlnd php-cli

Modifiez /etc/php.ini.

vi /etc/php.ini

définissez cgi.fix_pathinfo sur 0.

cgi.fix_pathinfo=0

Modifiez le fichier /etc/php-fpm.d/www.conf.

vi /etc/php-fpm.d/www.conf

Assurez-vous que les valeurs suivantes ne sont pas commentées.

[.More.]	 	 

pm.min_spare_servers = 5	 	 

[.More.]	 	 

pm.max_spare_servers = 35	 	 

[.More.]

Modifiez le paramètre d'écoute.

DE

listen = /run/php-fpm/www.sock

À

listen = 127.0.0.1:9000

Ensuite, démarrez le service PHP-FPM.

systemctl start php-fpm

Activez le service PHP-FPM pour qu'il démarre automatiquement au démarrage du système.

systemctl enable php-fpm

Activer la prise en charge de PHP-FPM sur l'hôte virtuel

Nous allons maintenant créer un hôte virtuel sur le serveur Nginx pour les détails suivants afin de tester le PHP.

Nom du serveur : web.itzgeek.local
Racine du document : /usr/share/nginx/html/web.itzgeek.local

Créez un fichier de configuration appelé web.itzgeek.local.conf sous /etc/nginx/conf.d et modifiez-le.

vi /etc/nginx/conf.d/web.itzgeek.local.conf

Ajoutez le contenu suivant.

server {
   server_name web.itzgeek.local;
   root /usr/share/nginx/html/web.itzgeek.local;

   location / {
       index index.html index.htm index.php;
   }

   location ~ \.php$ {
      include /etc/nginx/fastcgi_params;
      fastcgi_pass 127.0.0.1:9000;
      fastcgi_index index.php;
      fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
   }
}

Créez un répertoire racine de document.

mkdir /usr/share/nginx/html/web.itzgeek.local

Pour tester le PHP, nous allons placer un fichier PHP à la racine du document de l'hôte virtuel créé.

echo "<?php phpinfo(); ?>" > /usr/share/nginx/html/web.itzgeek.local/index.php

Redémarrez les services.

systemctl restart nginx

systemctl restart php-fpm

Tester la pile LEMP

Créez une entrée d'hôte pour votre domaine de serveur Web (server.itzgeek.local) dans les fichiers /etc/hosts (Linux) et hosts (Windows).

192.168.1.10             web.itzgeek.local

Ouvrez un navigateur Web et saisissez votre domaine dans la barre d'adresse.

http://web.itzgeek.local

La page ressemblera à ci-dessous.

D'après la capture d'écran ci-dessus, PHP fonctionne comme prévu et via FPM/FastCGI, comme indiqué dans la ligne API du serveur.

Vous pouvez faire défiler la page plus bas pour voir les détails du support MariaDB.

Sujets intéressants

Comment configurer Let's Encrypt SSL avec Nginx sur CentOS 8 / RHEL 8

Comment installer WordPress avec Nginx sur CentOS 8 / RHEL 8

Comment installer phpMyAdmin avec Nginx sur CentOS 8 / RHEL 8

Conclusion

Vous avez appris à installer la pile LEMP sur CentOS 8 / RHEL 8. Veuillez partager vos commentaires dans la section des commentaires.


Cent OS
  1. Comment installer Xdebug sur RHEL 8 / CentOS 8 Linux

  2. Comment installer php sur RHEL 8 / CentOS 8 Linux

  3. Comment installer Linux, Nginx, MariaDB, PHP (pile LEMP) dans CentOS 7 / RHEL 7

  4. Comment installer LEMP (Linux, Nginx, MariaDB &PHP-FPM) sur un VPS CentOS 7

  5. Comment installer la pile LEMP sur CentOS 7

Comment installer Linux, Nginx, MariaDB, PHP (pile LEMP) sur Linux Mint 19

Comment installer Linux, Nginx, MySQL, PHP (pile LEMP) dans Ubuntu 18.04

Comment installer LEMP sur CentOS 7

Comment installer la pile LEMP sur CentOS 8

Comment installer le serveur LEMP sur CentOS 8

Comment installer LEMP (Nginx, MariaDB, PHP) sur Centos 7