GNU/Linux >> LINUX-Kenntnisse >  >> Debian

So richten Sie Nginx-Serverblöcke unter Debian 9 ein

Mit Nginx Server Blocks können Sie mehr als eine Website auf einem einzigen Computer ausführen. Mit Server-Blöcken können Sie das Site Document Root (das Verzeichnis, das die Website-Dateien enthält) angeben, eine separate Sicherheitsrichtlinie für jede Site erstellen, unterschiedliche SSL-Zertifikate für jede Site verwenden und vieles mehr.

In diesem Tutorial zeigen wir Ihnen, wie Sie Nginx-Serverblöcke unter Debian 9 einrichten.

Voraussetzungen #

Stellen Sie sicher, dass Sie die folgenden Voraussetzungen erfüllt haben, bevor Sie mit diesem Lernprogramm fortfahren:

  • Domänenname, der auf Ihre öffentliche Server-IP verweist. Wir werden example.com verwenden .
  • Nginx installiert.
  • Sie sind als Root oder Benutzer mit sudo-Berechtigungen angemeldet.
In einigen Dokumentationen sehen Sie Server Blocks wird als Virtual host bezeichnet .Ein virtueller Host ist ein Apache-Begriff.

Erstellen Sie die Verzeichnisstruktur #

Das Dokumentenstammverzeichnis ist das Verzeichnis, in dem die Website-Dateien für einen Domänennamen gespeichert und als Antwort auf Anfragen bereitgestellt werden. Das Dokumenten-Stammverzeichnis kann ein beliebiges Verzeichnis auf Ihrem Debian-Server sein.

Wir werden die folgende Verzeichnisstruktur verwenden:

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

Wir erstellen ein separates Verzeichnis für jede Domain, die auf dem Server innerhalb von /var/www gehostet wird Verzeichnis. In jedem dieser Verzeichnisse erstellen wir ein public_html Verzeichnis, in dem die Dateien der Domain-Website gespeichert werden.

Erstellen Sie zunächst das Stammverzeichnis für die Domain example.com :

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

Als nächstes erstellen Sie eine index.html Datei im Dokumentstammverzeichnis der Domain.

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

Öffnen Sie die Datei und fügen Sie die folgenden Zeilen ein:

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

Um Berechtigungsprobleme zu vermeiden, ändern Sie den Besitz des Domänendokument-Stammverzeichnisses auf den Nginx-Benutzer (www-data ):

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

Erstellen Sie einen Serverblock #

Standardmäßig werden auf Debian-Systemen Konfigurationsdateien für Nginx-Serverblöcke in /etc/nginx/sites-available gespeichert Verzeichnis, die durch symbolische Links zu /etc/nginx/sites-enabled/ aktiviert werden Verzeichnis.

Öffnen Sie den Editor Ihrer Wahl und erstellen Sie die folgende Serverblockdatei:

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;
    }
}

Sie können die Konfigurationsdatei beliebig benennen, aber normalerweise ist es am besten, den Domänennamen zu verwenden.

Aktivieren Sie die neue Serverblockdatei, indem Sie einen symbolischen Link von der Datei zu sites-enabled erstellen Verzeichnis:

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

Testen Sie die Nginx-Konfiguration auf korrekte Syntax:

sudo nginx -t

Wenn keine Fehler vorhanden sind, sieht die Ausgabe so aus:

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

Starten Sie den Nginx-Dienst neu, damit die Änderungen wirksam werden:

sudo systemctl restart nginx

Um schließlich zu überprüfen, ob der Serverblock wie erwartet funktioniert, öffnen Sie http://example.com in Ihrem Browser Ihrer Wahl, und Sie sehen etwa Folgendes:


Debian
  1. So richten Sie einen Samba-Server unter Debian 10 Buster ein

  2. So richten Sie einen NFS-Server unter Debian 10 Buster ein

  3. So richten Sie einen SFTP-Server auf Debian 11 Server ein

  4. So richten Sie Nginx-Serverblöcke unter Ubuntu und CentOS ein

  5. So richten Sie einen OpenVPN-Server unter Debian 10 ein

So richten Sie einen Mailserver mit PostfixAdmin unter Debian 11 ein

So richten Sie Rsyslog Server Debian 10/11 ein

So richten Sie NTP-Server und -Client unter Debian 11 ein

So richten Sie ModSecurity mit Nginx unter Debian/Ubuntu ein

So installieren Sie Nginx mit PHP-FPM unter Debian 11

So installieren Sie Nginx in Debian 7