GNU/Linux >> Tutoriels Linux >  >> Debian

Comment configurer les blocs de serveur Nginx sur Debian 9

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 ce tutoriel, nous allons vous montrer comment configurer des blocs de serveur Nginx sur Debian 9.

Prérequis #

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

  • Nom de domaine pointant vers l'adresse IP de votre serveur public. Nous utiliserons example.com .
  • Nginx installé.
  • Vous êtes connecté en tant que root ou 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. La racine du document peut être n'importe quel répertoire sur votre serveur Debian.

Nous utiliserons la structure de répertoires suivante :

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

Nous allons créer un répertoire séparé pour chaque domaine qui sera hébergé sur le 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.

Commencez par créer le répertoire racine du domaine example.com :

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

Ensuite, créez un index.html fichier dans le répertoire racine des documents du domaine.

sudo nano /var/www/example.com/public_html/index.html

Ouvrez le fichier et collez les lignes suivantes :

/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>

Pour éviter les problèmes 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 Debian, les fichiers de configuration des blocs du 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 :

sudo nano /etc/nginx/sites-available/example.com.conf
/etc/nginx/sites-available/example.com.conf
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.

Activez le nouveau fichier de blocage du serveur en créant un lien symbolique du fichier vers le sites-enabled répertoire :

sudo ln -s /etc/nginx/sites-available/example.com.conf /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 :


Debian
  1. Comment configurer un serveur Samba sur Debian 10 Buster

  2. Comment configurer un serveur NFS sur Debian 10 Buster

  3. Comment configurer un serveur SFTP sur le serveur Debian 11

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

  5. Comment configurer un serveur OpenVPN sur Debian 10

Comment configurer un serveur de messagerie avec PostfixAdmin sur Debian 11

Comment configurer le serveur Rsyslog Debian 10/11

Comment configurer le serveur et le client NTP sur Debian 11

Comment configurer ModSecurity avec Nginx sur Debian/Ubuntu

Comment installer Nginx avec PHP-FPM sur Debian 11

Comment installer Nginx dans Debian 7