Installation de Nginx sur Ubuntu 20.04 : explication pas à pas

Le logiciel de serveur Web Nginx s’installe en quelques étapes seulement sur Ubuntu. Voici la procédure à suivre ainsi que les configurations serveur minimales.

Quelle est la configuration serveur Web minimale pour Nginx ?

Nginx nécessite un serveur avec le système d’exploitation Linux. Dans ce domaine, Ubuntu a fait ses preuves en tant que distribution Linux simple et stable. La capacité nécessaire pour le serveur Ubuntu dépend du projet. Une petite configuration matérielle peut déjà suffire pour un site Web simple. Nginx est connu pour ses performances élevées tout en économisant les ressources système.

Voici la configuration minimale recommandée :

  • 100 Go d’espace disque ;
  • 6 Go de RAM ;
  • 1 processeur mono Core.

Un serveur Cloud Flex avec IONOS vous permet de configurer librement le matériel. Un avantage de taille : si vos exigences augmentent, il vous suffit d’adapter votre configuration à vos besoins.

Conseil

Le serveur Cloud n’est pas toujours la meilleure solution pour chaque projet. Chez IONOS, vous pouvez aussi louer un serveur dédié avec un accès exclusif au matériel, ou un vServer (VPS) avec virtualisation intégrale.

Pour accéder à votre serveur Web depuis Internet, vous aurez aussi besoin d’un nom de domaine.

Domaine Check
  • .fr
  • .org
  • .net

Installation de Nginx sur Ubuntu 20.04 : guide étape par étape

L’installation et la configuration de Nginx sur Ubuntu se fait en quelques étapes simples.

Étape 1 : télécharger et installer le logiciel

Avant d’installer Nginx, commencez par mettre à jour le gestionnaire de paquets de votre système :

sudo apt update
sudo apt upgrade
bash

Installez ensuite Nginx sur votre système :

sudo apt install nginx
bash

Il ne vous reste plus qu’à confirmer le processus d’installation.

Étape 2 : libérer le port

Pour pouvoir accéder à votre serveur Web depuis l’extérieur, vous devez configurer votre pare-feu. Dans Ubuntu, cette procédure est prise en charge par le programme « ufw ». Pour un paramétrage aussi restrictif que possible, choisissez la commande suivante :

sudo ufw allow 'Nginx HTTP'
bash

Cela permet de libérer le port 80. Peut-être devrez-vous répéter cette opération dans les paramètres de l’hébergeur. Dans le Cloud Panel IONOS, par exemple, cette fonction se trouve sous la section « Pare-feu ».

Cloud Panel IONOS : paramètres du pare-feu avec libération du port 80
Libérez le port 80 dans les paramètres du serveur pour que les visiteurs puissent accéder à votre serveur Web.

Étape 3 : tester le serveur, lancer et arrêter

À présent, vérifiez si l’installation du serveur Web s’est déroulée correctement. Pour cela, saisissez cette commande dans le terminal :

systemctl status nginx
bash

La sortie devrait afficher le statut du serveur comme « actif ». Vous pouvez également appeler le serveur depuis le navigateur. Pour cela, saisissez l’adresse IP du serveur dans la ligne d’adresse du navigateur.

Message de bienvenue d’un serveur Web Nginx dans le navigateur
Si tout s’est bien passé, Nginx affiche ce message de bienvenue.

Il est aussi possible de lancer le serveur manuellement :

sudo nginx 
bash

Ce n’est pas la seule commande permettant de contrôler un serveur Web Nginx, il en existe d’autres :

  • stop : arrête immédiatement le serveur Web en cours d’exécution ;
  • quit : arrête le serveur Web en cours d’exécution une fois les processus en cours terminés ;
  • reload : charge à nouveau le fichier de configuration.

Ces commandes suivent toujours la syntaxe suivante :

sudo nginx stop
bash

Étape 4 : créer une page test

Nginx génère automatiquement un site Web avec message de bienvenue sous Ubuntu 20.04. Le document HTML correspondant se trouve dans le dossier /var/www/html/. Il est à présent possible de créer d’autres documents HTML dans ce même dossier afin de construire son propre site Web. Cependant, mieux vaut laisser ce dossier intact et créer un nouveau dossier pour son propre domaine. Pour cela, utilisez la commande suivante :

sudo mkdir -p /var/www/example.com/html
bash

Dans cet exemple, nous utilisons le nom de domaine monsiteweb.com ; pour suivre ce tutoriel, utilisez votre propre nom de domaine à sa place. N’oubliez pas d’également vous attribuer les droits d’administrateur :

sudo chown -R $USER:$USER /var/www/monsiteweb.com/html
sudo chmod -R 755 /var/www/monsiteweb.com
bash

Dans ce nouveau dossier, créez votre premier document HTML, soit la page d’accueil de votre site :

sudo nano /var/www/monsiteweb.com/html/index.html
bash

Vous pouvez bien évidemment organiser cette page d’accueil comme bon vous semble. Voici un exemple simple que vous pouvez remplir avec votre propre contenu :

<html>
    <head>
        <title>Monsiteweb</title>
    </head>
    <body>
        <h1>Test</h1>
        <p>Bienvenue sur votre premier site Internet<p>
    </body>
</html>
bash

Enregistrez et fermez le document.

À ce moment, le serveur Web diffuse encore l’ancien message d’accueil standard lors de la connexion au site Web. Vous devez faire savoir à Nginx que c’est le nouveau contenu qui doit s’afficher. Pour cela, créez un nouveau fichier de configuration dans le dossier Nginx :

sudo nano /etc/nginx/sites-available/monsiteweb.com
bash

Dans ce nouveau fichier, insérez un bloc serveur :

server {
    listen 80;
    listen [::]:80;
    root /var/www/monsiteweb.com/html;
    index index.html index.htm index.nginx-debian.html;
    server_name monsiteweb.com www.monsiteweb.com;
    location / {
        try_files $uri $uri/ =404;
    }
}
bash

Veillez à indiquer ici le bon port libre. Si vous avez suivi nos instructions, vous devriez avoir aussi libéré le port 80. Enregistrez le fichier et fermez-le.

Vous avez créé ce fichier de configuration dans le dossier « sites-available » et devez maintenant créer un lien dans le dossier « sites-enabled ». À son démarrage, Nginx se base sur ce dossier pour déterminer le site à afficher.

sudo ln -s /etc/nginx/sites-available/example.com /etc/nginx/sites-enabled/
bash

Relancez le serveur :

sudo systemctl restart nginx
bash

Si vous consultez maintenant votre domaine dans un navigateur, vous verrez alors s’afficher votre nouveau site.