GNU/Linux >> Tutoriels Linux >  >> Ubuntu

Comment configurer les blocs de serveur Nginx sur Ubuntu 18.04

Nginx Server Blocks vous permet d'exécuter plusieurs sites Web sur une seule machine. Avec les blocs serveur, vous pouvez spécifier la racine du document du site (le répertoire qui contient les fichiers du site Web), créer une politique de sécurité distincte pour chaque site, utiliser différents certificats SSL pour chaque site, et bien plus encore.

Dans cet article, nous fournirons des instructions étape par étape sur la configuration des blocs de serveur Nginx (similaires aux hôtes virtuels Apache) sur Ubuntu 18.04.

Prérequis #

Assurez-vous que vous avez satisfait aux prérequis suivants avant de poursuivre le didacticiel :

  • Vous avez un nom de domaine pointant vers l'IP de votre serveur public. Nous utiliserons example.com .
  • Vous avez installé Nginx en suivant ces instructions.
  • Vous êtes connecté en tant qu'utilisateur avec des privilèges sudo.
Dans certaines documentations, vous verrez Server Blocks étant appelé un Virtual host .Un hôte virtuel est un terme apache.

Créer la structure de répertoire #

La racine du document est le répertoire dans lequel les fichiers du site Web d'un nom de domaine sont stockés et servis en réponse aux demandes. Vous pouvez définir la racine du document à l'emplacement de votre choix.

Nous utiliserons la structure de répertoires suivante :

/var/www/
├── domain1.com
│   └── public_html
├── domain2.com
│   └── public_html
├── domain3.com
│   └── public_html

Fondamentalement, nous allons créer un répertoire séparé pour chaque domaine que nous voulons héberger sur notre serveur à l'intérieur du /var/www annuaire. Dans chacun de ces répertoires, nous allons créer un public_html répertoire qui stockera les fichiers du site Web du domaine.

Créons le répertoire racine de notre domaine example.com :

sudo mkdir -p /var/www/example.com/public_html

À des fins de test, nous allons créer un index.html fichier dans le répertoire racine des documents du domaine.

Ouvrez votre éditeur et créez le fichier de démonstration :

/var/www/example.com/public_html/index.html
<!DOCTYPE html>
<html lang="en" dir="ltr">
  <head>
    <meta charset="utf-8">
    <title>Welcome to example.com</title>
  </head>
  <body>
    <h1>Success! example.com home page!</h1>
  </body>
</html>

Dans cet exemple, nous exécutons les commandes en tant qu'utilisateur sudo et les fichiers et répertoires nouvellement créés appartiennent à l'utilisateur root.

Pour éviter tout problème d'autorisation, changez la propriété du répertoire racine du document du domaine en l'utilisateur Nginx (www-data ):

sudo chown -R www-data: /var/www/example.com

Créer un bloc de serveur #

Par défaut sur les systèmes Ubuntu, les fichiers de configuration des blocs de serveur Nginx sont stockés dans /etc/nginx/sites-available répertoire, qui sont activés via des liens symboliques vers le /etc/nginx/sites-enabled/ répertoire.

Ouvrez l'éditeur de votre choix et créez le fichier de bloc de serveur suivant :

/etc/nginx/sites-available/example.com
server {
    listen 80;
    listen [::]:80;

    root /var/www/example.com/public_html;

    index index.html;

    server_name example.com www.example.com;

    access_log /var/log/nginx/example.com.access.log;
    error_log /var/log/nginx/example.com.error.log;

    location / {
        try_files $uri $uri/ =404;
    }
}

Vous pouvez nommer le fichier de configuration comme vous le souhaitez, mais il est généralement préférable d'utiliser le nom de domaine.

Pour activer le nouveau fichier de blocage du serveur, créez un lien symbolique du fichier vers le sites-enabled répertoire, qui est lu par Nginx au démarrage :

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

Testez la configuration Nginx pour une syntaxe correcte :

sudo nginx -t

S'il n'y a pas d'erreurs, la sortie ressemblera à ceci :

nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful

Redémarrez le service Nginx pour que les modifications prennent effet :

sudo systemctl restart nginx

Enfin, pour vérifier que le bloc serveur fonctionne comme prévu, ouvrez http://example.com dans le navigateur de votre choix, et vous verrez quelque chose comme ceci :


Ubuntu
  1. Comment configurer un serveur OpenVPN sur Ubuntu 18.04

  2. Comment configurer Nginx en tant que proxy inverse sur Ubuntu 20.04

  3. Comment configurer WireGuard sur Ubuntu 22.04

  4. Comment configurer les blocs de serveur Nginx sur Ubuntu et CentOS

  5. Comment configurer un serveur TeamSpeak sur Ubuntu 16.04

Comment configurer les blocs de serveur Nginx dans Ubuntu 18.04 LTS

Comment redémarrer ou recharger NGINX sur le serveur Ubuntu 20.04

Comment installer Nginx sur Ubuntu

Comment installer Nginx sur Ubuntu 18.04 LTS

Comment installer le serveur Web Nginx sur Ubuntu 20.04

Comment configurer un serveur Seafile avec Nginx sur Ubuntu 18.04