Website-Suche

So richten Sie Nginx-Serverblöcke (virtuelle Hosts) unter Ubuntu 20.04 ein


Manchmal müssen Sie möglicherweise mehr als eine Domain oder Website auf Ihrem Nginx-Webserver hosten. Dazu muss ein Serverblock (Virtuelle Hosts) konfiguriert werden, der die gesamte Konfiguration Ihrer Domain kapselt. Nginx-Serverblöcke sind ein Synonym für virtuelle Apache-Hostdateien und dienen demselben Zweck.

In diesem Thema wird gezeigt, wie ein Nginx-Serverblock unter Ubuntu 20.04 eingerichtet wird.

Voraussetzungen:

  • Ein A-Eintrag, der bei Ihrem Domainnamen-Hosting-Anbieter definiert ist. Ein A-Eintrag ist ein DNS-Eintrag, der den Domänennamen auf die IP-Adresse des öffentlichen Servers verweist. Für diese Anleitung verwenden wir zur Veranschaulichung den Domainnamen crazytechgeek.info.
  • Ein Nginx-Server oder LEMP-Stack, der auf der Ubuntu 20.04 LTS-Instanz installiert ist.
  • Ein angemeldeter Benutzer mit Sudo-Berechtigungen.

Wenn alle Anforderungen erfüllt sind, wollen wir untersuchen, wie Sie einen Nginx-Serverblock in Ubuntu einrichten können.

Schritt 1: Erstellen Sie ein Nginx-Dokumentstammverzeichnis

Zunächst erstellen wir ein separates Verzeichnis für unsere Domain, das alle mit der Domain verbundenen Einstellungen enthält.

sudo mkdir -p /var/www/crazytechgeek.info/html

Weisen Sie als Nächstes den Besitz des Verzeichnisses mithilfe der Umgebungsvariablen $USER zu. Dadurch wird der Besitz des Verzeichnisses dem aktuell angemeldeten Benutzer zugewiesen. Stellen Sie sicher, dass Sie mit einem regulären Benutzerkonto und nicht als Root angemeldet sind.

sudo chown -R $USER:$USER /var/www/crazytechgeek.info/html

Weisen Sie als Nächstes dem Verzeichnis die entsprechenden Berechtigungen zu und gewähren Sie dem angemeldeten Benutzer alle Rechte (Lesen, Schreiben und Ausführen) und der Gruppe und anderen Benutzern nur Lese- und Ausführungsberechtigungen.

sudo chmod -R 755 /var/www/crazytechgeek.info

Wenn die Verzeichnisberechtigungen und der Besitz korrekt konfiguriert sind, müssen wir eine Beispielwebseite für die Domäne erstellen.

Schritt 2: Erstellen Sie eine Beispielseite für die Domain

In diesem Schritt erstellen wir zu Testzwecken eine index.html-Datei. Diese Datei stellt Inhalte bereit, die im Webbrowser angezeigt werden, wenn die Domain im Browser aufgerufen wird.

sudo vim /var/www/crazytechgeek.info/html/index.html

Fügen Sie den folgenden HTML-Inhalt ein.

<html>
    <head>
        <title>Welcome to your_domain!</title>
    </head>
    <body>
  <h1>Bravo! Your server block is working as expected!</h1>
    </body>
</html>

Speichern und beenden Sie die Konfigurationsdatei.

Schritt 3: Erstellen Sie einen Nginx-Serverblock in Ubuntu

Nginx-Serverblöcke befinden sich im Verzeichnis /etc/nginx/sites-available. Der standardmäßige Nginx-Serverblock ist /etc/nginx/sites-available/default, der die Standard-HTML-Datei unter /var/www/html/index.nginx-debian.html bereitstellt .

Für unseren Fall müssen wir einen Serverblock erstellen, der den Inhalt in der Datei index.html bereitstellt, die wir zuvor erstellt haben.

Erstellen Sie also die angezeigte Serverblockdatei.

sudo vim /etc/nginx/sites-available/crazytechgeek.info

Fügen Sie den folgenden Inhalt ein:

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

        root /var/www/crazytechgeek.info/html;
        index index.html index.htm index.nginx-debian.html;

        server_name crazytechgeek.info www.crazytechgeek.info;

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

		
    access_log /var/log/nginx/crazytechgeek.info.access.log;
    error_log /var/log/nginx/crazytechgeek.info.error.log;

}

Speichern und beenden Sie die Datei.

Schritt 4: Aktivieren Sie den Nginx-Serverblock in Ubuntu

Um den Nginx-Serverblock zu aktivieren, müssen Sie ihn wie gezeigt mit dem Verzeichnis /etc/nginx/sites-enabled/ verknüpfen.

sudo ln -s /etc/nginx/sites-available/crazytechgeek.info /etc/nginx/sites-enabled/

An diesem Punkt sind wir so gut wie fertig. Es ist jedoch ratsam, zu überprüfen, ob alle Konfigurationen in Ordnung sind. Führen Sie dazu den Befehl aus:

sudo nginx -t

Wenn Sie unsere Schritte korrekt ausgeführt haben, sollten Sie die angezeigte Ausgabe erhalten:

Starten Sie abschließend Nginx neu, damit die an den Konfigurationsdateien vorgenommenen Änderungen wirksam werden.

sudo systemctl restart Nginx

Bestätigen Sie dann, ob Nginx ausgeführt wird, indem Sie den angezeigten Befehl ausführen:

sudo systemctl status Nginx

Schritt 5: Testen des Nginx-Serverblocks in Ubuntu

Um zu bestätigen, ob der Serverblock wie erwartet funktioniert und Inhalte im Verzeichnis /var/www/crazytechgeek.info bereitstellt, öffnen Sie Ihren Webbrowser und durchsuchen Sie den Domänennamen Ihres Servers:

http://domain-name

Sie sollten den in der HTML-Datei enthaltenen Inhalt in Ihrem Serverblock erhalten, wie gezeigt.

Abschluss

In dieser Anleitung haben wir Ihnen gezeigt, wie Sie einen Nginx-Serverblock mit einer einzelnen Domäne unter Ubuntu Linux einrichten. Sie können dieselben Schritte für verschiedene Domänen wiederholen und trotzdem die gleichen Ergebnisse erzielen. Wir hoffen, dass der Leitfaden aufschlussreich war.