Présentation
Nginx est une application Linux gratuite et open source pour les serveurs Web. Il fonctionne comme un serveur proxy inverse en dirigeant le trafic Web vers des serveurs spécifiques.
Nginx est utilisé pour la sécurité et l'équilibrage de charge, mais peut également fonctionner indépendamment en tant que serveur Web.
Ce guide vous aidera à installer Nginx sur Ubuntu 20.04 Linux (Focal Fossa).
Prérequis
- Un système exécutant Ubuntu 20.04 Linux
- Un compte utilisateur avec sudo ouracine privilèges
- Accès à une fenêtre de terminal/ligne de commande (cliquez sur Activités > Rechercher> tapez Terminal )
Étape 1 :Mettre à jour les référentiels de logiciels
Il est important d'actualiser les listes de référentiels avant d'installer un nouveau logiciel. Cela permet de s'assurer que les dernières mises à jour et correctifs sont installés.
Ouvrez une fenêtre de terminal et entrez ce qui suit :
sudo apt-get update
Laissez le processus se terminer.
Étape 2 :Installez Nginx à partir des référentiels Ubuntu
Nginx est inclus dans les référentiels par défaut d'Ubuntu 20.04. Installez-le en saisissant la commande suivante :
sudo apt-get install nginx
Étape 3 :Vérifier l'installation
Vérifiez que Nginx est correctement installé en vérifiant la version du logiciel. Saisissez ce qui suit :
nginx -v
Le système devrait afficher la version logicielle de Nginx.
Étape 4 :Contrôler le service Nginx
Le comportement de Nginx peut être ajusté. Utilisez-le pour démarrer ou arrêter Nginx, ou pour activer ou désactiver Nginx au démarrage.
Commencez par vérifier l'état du service Nginx :
sudo systemctl status nginx
Si le statut affiche active (running)
, Nginx a déjà démarré. Appuyez sur CTRL
+z
pour quitter l'affichage d'état.
Si Nginx n'est pas en cours d'exécution, utilisez la commande suivante pour lancer le service Nginx :
sudo systemctl start nginx
Pour configurer Nginx pour qu'il se charge au démarrage du système, saisissez ce qui suit :
sudo systemctl enable nginx
Pour arrêter le service Nginx, saisissez ce qui suit :
sudo systemctl stop nginx
Pour empêcher Nginx de se charger au démarrage du système :
sudo systemctl disable nginx
Pour recharger le service Nginx (utilisé pour appliquer les modifications de configuration) :
sudo systemctl reload nginx
Pour un redémarrage brutal de Nginx :
sudo systemctl restart nginx
Étape 5 :Autoriser le trafic Nginx
Nginx a besoin d'un accès via le pare-feu du système. Pour ce faire, Nginx installe un ensemble de profils pour l'ufw par défaut d'Ubuntu (Pare-feu non compliqué).
Commencez par afficher les profils Nginx disponibles :
sudo ufw app list
Le système devrait afficher les éléments suivants :
Pour accorder l'accès à Nginx via le pare-feu Ubuntu par défaut, saisissez ce qui suit :
sudo ufw allow 'nginx http'
Le système doit afficher Rules updated
.
Actualisez les paramètres du pare-feu en saisissant :
sudo ufw reload
Pour le trafic chiffré (https), saisissez :
sudo ufw allow 'nginx https'
Pour autoriser les deux, saisissez :
sudo ufw allow 'nginx full'
Étape 6 :Tester Nginx
Assurez-vous que le service Nginx est en cours d'exécution, comme à l'étape 4. Ouvrez un navigateur Web et accédez à l'adresse Web suivante :
http://127.0.0.1
Le système devrait afficher la page d'accueil de Nginx.
Si le système n'a pas d'interface graphique, la page d'accueil de Nginx peut être chargée dans le terminal en utilisant curl :
sudo apt-get install curl
curl –i 127.0.0.1
Le système doit afficher le code HTML de la page d'accueil de Nginx.
Étape 7 :Configurer un bloc de serveur (facultatif)
Dans Nginx, un bloc serveur est une configuration qui fonctionne comme son propre serveur. Par défaut, Nginx a un bloc de serveur préconfiguré.
Il se trouve à /var/www/html . Cependant, il peut être configuré avec plusieurs blocs de serveurs pour différents sites.
1. Créer un répertoire pour le domaine de test
Dans une fenêtre de terminal, créez un nouveau répertoire en saisissant ce qui suit :
sudo mkdir -p /var/www/test_domain.com/html
2. Configurer la propriété et les autorisations
Utilisez chmod
pour configurer les règles de propriété et d'autorisation :
sudo chown –R $USER:$USER /var/www/test_domain.com
sudo chmod –R 755 /var/www/test_domain.com
3. Créer un fichier index.html pour le bloc serveur
Ouvrez index.html pour l'édition dans un éditeur de texte de votre choix (nous utiliserons l'éditeur de texte Nano):
sudo nano /var/www/test_domain.com/html/index.html
Dans l'éditeur de texte, saisissez le code HTML suivant :
<html>
<head>
<title>Welcome to test_domain.com!</title>
</head>
<body>
<h1>This message confirms that your Nginx server block is working. Great work!</h1>
</body>
</html>
Appuyez sur CTRL
+o
pour écrire les modifications, puis CTRL
+x
pour quitter.
4. Créer une configuration de bloc de serveur Nginx
Ouvrez le fichier de configuration pour le modifier :
sudo nano /etc/nginx/sites-available/test_domain.com
Saisissez le code suivant :
server {
listen 80;
root /var/www/test_domain.com/html;
index index.html index.htm index.nginx.debian.html;
server_name test_domain.com www.test_domain.com;
location / {
try_files $uri $uri/ =404;
}
}
5. Créer un lien symbolique pour Nginx à lire au démarrage
Créez un lien symbolique entre le bloc serveur et le répertoire de démarrage en saisissant ce qui suit :
sudo ln –s /etc/nginx/sites-available/test_domain.com /etc/nginx/sites-enabled
6. Redémarrez le service Nginx
Redémarrez Nginx en exécutant la commande suivante :
sudo systemctl restart nginx
7. Testez la configuration
sudo nginx –t
Le système doit signaler que la syntaxe du fichier de configuration est correcte et que le test du fichier de configuration a réussi.
8. Modifier le fichier Hosts (facultatif)
Si vous utilisez un nom de domaine de test qui n'est pas enregistré ou public, le /etc/hosts le fichier peut devoir être modifié pour afficher le test_domain.com page.
Affichez l'adresse IP du système avec la commande suivante :
hostname –i
Notez l'adresse IP affichée.
Ensuite, ouvrez /etc/hosts pour l'édition :
sudo nano /etc/hosts
Dans un espace vide juste en dessous des informations sur l'hôte local, ajoutez la ligne suivante :
127.0.1.1 test_domain.com www.test_domain.com
Remplacez 127.0.0.1 par l'adresse IP affichée ci-dessus. Appuyez sur CTRL
+o
pour enregistrer les modifications, puis CTRL
+x
pour quitter.
9. Vérifier test_domain.com dans un navigateur Web
Ouvrez une fenêtre de navigateur et accédez à test_domain.com (ou le nom de domaine que vous avez configuré dans Nginx).
Vous devriez voir le message que vous avez entré dans la partie 3.
Emplacements importants des fichiers Nginx
Par défaut, Nginx stocke différents fichiers de configuration et journaux aux emplacements suivants :
- /var/www/html – Contenu du site Web tel que vu par les visiteurs.
- /etc/nginx – Emplacement des principaux fichiers de l'application Nginx.
- /etc/nginx/nginx.conf – Le fichier de configuration principal de Nginx.
- /etc/nginx/sites-available – Liste de tous les sites Web configurés via Nginx.
- /etc/nginx/sites-enabled – Liste des sites Web activement desservis par Nginx.
- /var/log/nginx/access.log – Accédez aux journaux de suivi de chaque requête adressée à votre serveur.
- /var/log/ngins/error .journal – Un journal de toutes les erreurs générées dans Nginx.