Nginx prononcé "engine x" est un serveur HTTP et proxy inverse open source et hautes performances chargé de gérer la charge de certains des plus grands sites sur Internet. Il peut être utilisé comme serveur Web autonome, équilibreur de charge, cache de contenu et proxy inverse pour les serveurs HTTP et non HTTP.
Comparé à Apache, Nginx peut gérer un grand nombre de connexions simultanées et a une empreinte mémoire plus petite par connexion.
Ce tutoriel explique comment installer et gérer Nginx sur CentOS 8.
Prérequis #
Avant de continuer, assurez-vous que vous êtes connecté en tant qu'utilisateur avec des privilèges sudo et qu'Apache ou tout autre processus ne s'exécute pas sur le port 80 ou 443.
Installation de Nginx sur CentOS 8 #
À partir de CentOS 8, le package Nginx est disponible dans les référentiels CentOS par défaut.
L'installation de Nginx sur CentOS 8 est aussi simple que de taper :
sudo yum install nginx Une fois l'installation terminée, activez et démarrez le service Nginx avec :
sudo systemctl enable nginxsudo systemctl start nginx
Pour vérifier que le service est en cours d'exécution, vérifiez son état :
sudo systemctl status nginx Le résultat devrait ressembler à ceci :
● nginx.service - The nginx HTTP and reverse proxy server
Loaded: loaded (/usr/lib/systemd/system/nginx.service; enabled; vendor preset: disabled)
Active: active (running) since Sun 2019-10-06 18:35:55 UTC; 17min ago
...
Réglage du pare-feu #
FirewallDis la solution de pare-feu par défaut sur Centos 8.
Lors de l'installation, Nginx crée des fichiers de service pare-feu avec des règles prédéfinies pour autoriser l'accès à HTTP (80 ) et HTTPS (443 ) ports.
Utilisez les commandes suivantes pour ouvrir les ports nécessaires de manière permanente :
sudo firewall-cmd --permanent --zone=public --add-service=httpsudo firewall-cmd --permanent --zone=public --add-service=httpssudo firewall-cmd --reload
Maintenant, vous pouvez tester votre installation Nginx en ouvrant http://YOUR_IP dans votre navigateur Web. Vous devriez voir la page d'accueil par défaut de Nginx, qui devrait ressembler à l'image ci-dessous :
Structure et meilleures pratiques du fichier de configuration Nginx #
- Tous les fichiers de configuration Nginx se trouvent dans le répertoire
/etc/nginx/répertoire. - Le fichier de configuration principal de Nginx est
/etc/nginx/nginx.conf. - La création d'un fichier de configuration distinct pour chaque domaine facilite la maintenance du serveur.
- Les fichiers de bloc du serveur Nginx doivent se terminer par
.confet être stocké dans/etc/nginx/conf.dannuaire. Vous pouvez avoir autant de blocs de serveur que vous le souhaitez. - Il est recommandé de suivre une convention de dénomination standard. Par exemple, si le nom de domaine est
mydomain.comalors le fichier de configuration doit être nommémydomain.com.conf - Si vous utilisez des segments de configuration reproductibles dans vos blocs de serveur de domaine, il est judicieux de refactoriser ces segments en extraits.
- Fichiers journaux Nginx (
access.logeterror.log) sont situés dans le/var/log/nginx/annuaire. Il est recommandé d'avoir unaccessdifférent eterrorfichiers journaux pour chaque bloc de serveur. - Vous pouvez définir le répertoire racine des documents de votre domaine à l'emplacement de votre choix. Les emplacements les plus courants pour la racine Web incluent :
/home/<user_name>/<site_name>/var/www/<site_name>/var/www/html/<site_name>/opt/<site_name>/usr/share/nginx/html