Website-Suche

Installieren Sie Nginx mit Serverblöcken (Virtual Hosts) unter Debian 10


Nginx ist ein sehr beliebter Hochleistungs-Webserver, der die Leistungsfähigkeit von Reverse-Proxy, Lastausgleich, Caching und vielem mehr vereint. Je nach Konfiguration kann es sowohl als Reverse-Proxy als auch als Load Balancer für HTTP/HTTPS-Server fungieren.

Der Nginx-Webserver verfügt über eine phänomenale Fähigkeit, Tausende gleichzeitiger Verbindungen zu bedienen, und ist damit der schnellste Webserver, der über die Hälfte der am stärksten genutzten Websites auf der Welt betreibt. Dazu gehören Netflix, DuckDuckGo und DropBox, um nur einige zu nennen.

Lesen Sie auch: So installieren Sie Apache mit virtuellen Hosts unter Debian 10

In diesem Tutorial führen wir Sie durch die Schritte zur Installation von Nginx mit virtuellen Hosts, um mehrere Domänen auf einem Debian 10-Server zu hosten.

Voraussetzungen

Bevor wir beginnen, stellen Sie sicher, dass die folgenden Anforderungen erfüllt sind:

  1. Eine Instanz von Debian 10.
  2. Ein vollqualifizierter Domänenname (FQDN), der auf den Server verweist.
  3. In dieser Anleitung verwenden wir die Domäne linux-console.net, die auf ein Debian 10-System mit einer IP-Adresse 192.168.0.104 verweist.
  4. Eine gute Internetverbindung.

Schritt 1: Aktualisieren Sie das Debian 10-Paket-Repository

Vor allem müssen wir unser lokales Paket-Repository auf die neuesten Versionen aktualisieren. Melden Sie sich dazu als normaler Benutzer mit Sudo-Berechtigungen an und führen Sie den folgenden Befehl aus.

sudo apt update -y

Schritt 2: Installieren Sie Nginx unter Debian 10

Da Nginx in den Repositories von Debian vorhanden ist, können wir es bequem mit dem apt-Paketmanager installieren, der mit Debian geliefert wird.

sudo apt install nginx -y

Schritt 3: Überprüfen des Status des Nginx-Webservers

Wenn keine Fehler aufgetreten sind, wurde der Nginx-Webserver erfolgreich installiert. Es ist ratsam, den Status des Webservers zu überprüfen, bevor Sie weitere Konfigurationen vornehmen.

Um den Status von Nginx zu überprüfen, führen Sie Folgendes aus:

systemctl status nginx

Wenn der Webserver aktiv ist, erhalten Sie die folgende Benachrichtigung.

Wenn Sie den Nginx-Webserver neu starten möchten, führen Sie den Befehl aus.

systemctl restart nginx

Geben Sie den Befehl aus, um Nginx zu stoppen.

systemctl stop nginx

Um den Webserver zu starten, führen Sie Folgendes aus:

systemctl start nginx

So konfigurieren Sie den Nginx-Webserver so, dass er beim Booten startet.

systemctl enable nginx

Lesen Sie auch: Die 10 am häufigsten verwendeten Nginx-Befehle, die jeder Linux-Benutzer kennen muss

Schritt 4: Konfigurieren Sie die Firewall zum Öffnen des Nginx-Ports

Nachdem Nginx erfolgreich installiert und ausgeführt wurde, müssen wir den Webzugriff auf den Dienst ermöglichen, insbesondere für externe Benutzer. Wenn Sie die UFW-Firewall aktiviert haben, müssen Sie den HTTP-Zugriff über die Firewall zulassen.

Um dies zu erreichen, führen Sie den Befehl aus.

sudo ufw allow 'Nginx HTTP'

Laden Sie anschließend die Firewall neu, um die Änderungen zu übernehmen.

sudo ufw reload

Großartig, jetzt können Sie durch Ausführen überprüfen, ob HTTP durch die Firewall zugelassen ist.

sudo ufw status

Aus dem obigen Snippet können wir deutlich erkennen, dass Nginx HTTP durch die UFW-Firewall zugelassen wurde.

Schritt 5: Zugriff auf den Nginx-Webserver

Bisher haben wir die grundlegenden Konfigurationen vorgenommen, um Nginx zum Laufen zu bringen. Um über den Webbrowser auf den Webserver zuzugreifen, durchsuchen Sie die IP-Adresse des Servers wie gezeigt.

http://server-IP-address

Dies ist eine Bestätigung, dass Nginx betriebsbereit ist.

Schritt 6: Konfigurieren von Nginx-Serverblöcken unter Debian 10

Dies ist ein optionaler Schritt und nützlich, wenn Sie mehrere Domains auf einem Nginx-Webserver hosten möchten. Damit dies funktioniert, benötigen Sie einen Domänennamen, der auf Ihren Debian-Server verweist.

Für diesen Abschnitt verwenden wir den Domainnamen linux-console.net, dessen A-Eintrag auf die IP 192.168.0.104 des Servers verweist.

Wenn Sie den Domänennamen auf die IP-Adresse Ihres Servers verweisen, ändert sich der Domänenname bald und verweist wie gezeigt auf Ihren Webserver.

Lassen Sie uns nun einen Serverblock erstellen.

Erstellen wir zunächst wie gezeigt ein Verzeichnis für unsere Domain.

sudo mkdir -p /var/www/html/linux-console.net

Weisen Sie dann wie gezeigt den erforderlichen Dateieigentum zu.

sudo chown -R $USER:$USER /var/www/html/linux-console.net

Weisen Sie als Nächstes der Gruppe und den öffentlichen Benutzern wie gezeigt Lese- und Ausführungsberechtigungen zu.

sudo chmod -R 755 /var/www/html/linux-console.net

Lassen Sie uns nun eine einfache index.html-Beispielwebseite mit dem Texteditor vim erstellen.

sudo vim /var/www/html/linux-console.net/index.html

Fügen Sie der Datei einige Beispielinhalte hinzu. Dies wird im Browser angezeigt.

<html>
    <head>
        <title>Welcome to Linux geeks</title>
    </head>
    <body>
        <h1>Success! Welcome to your new server block on Tecmint Nginx Web Server !</h1>
    </body>
</html>

Speichern und beenden Sie den Editor

Damit dieser Inhalt bereitgestellt werden kann, muss ein Serverblock erstellt werden.

Lassen Sie uns einen Serverblock erstellen

vim  /etc/nginx/sites-available/linux-console.net

Kopieren Sie den folgenden Inhalt und fügen Sie ihn in die Serverblockdatei ein.

server {
        listen 80;
        listen [::]:80;

        root /var/www/html/linux-console.net;
        index index.html index.htm index.nginx-debian.html;

        server_name linux-console.net linux-console.net;

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

Stellen Sie sicher, dass Sie den Domainnamen linux-console.net mit Ihrem eigenen Domainnamen aktualisieren.

Um die Serverblockdatei zu aktivieren oder zu aktivieren, erstellen Sie wie gezeigt einen symbolischen Link.

sudo ln -s /etc/nginx/sites-available/linux-console.net /etc/nginx/sites-enabled/

Führen Sie Folgendes aus, um zu überprüfen, ob alle Einstellungen in Nginx ordnungsgemäß konfiguriert sind.

sudo nginx -t

Großartig, es kann losgehen! Starten Sie abschließend Nginx neu.

sudo systemctl restart nginx

Gehen Sie zu Ihrem Browser und aktualisieren Sie ihn. Wenn alles gut gelaufen ist, sollte der Browser Ihre Server-Block-Webseite wie gezeigt bereitstellen.

Schritt 7: Zugriff auf Nginx-Protokolldateien

Um auf Protokolldateien zu Anfragen an Ihren Server zuzugreifen, greifen Sie auf die folgende Datei zu.

sudo vim /var/log/nginx/access.log 

Falls Sie auf Fehler in Ihrem Nginx-Webserver stoßen, untersuchen Sie die Datei auf Fehler.

sudo vim /var/log/nginx/error.log
Abschluss

In dieser Anleitung haben Sie erfahren, wie Sie Nginx auf Ihrer Debian 10-Instanz installieren und diese weiter konfigurieren, um zusätzliche Domänen zu unterstützen. Wir hoffen, dass Sie diesen Leitfaden aufschlussreich fanden. Wir freuen uns über Ihr Feedback.