So richten Sie den Nginx-Webserver mit Nginx-Serverblöcken unter Ubuntu 18.04 ein

Der Nginx-Webserver ist einer der bekanntesten und am häufigsten verwendeten Webserver der Welt. Es ist eine kostenlose und offene Quelle. Es wird hauptsächlich als Reverse-Proxy verwendet. Es kann auch als Load Balancer, HTTP-Cache und Mail-Proxy verwendet werden.

In dieser Anleitung erfahren Sie, wie Sie einen Nginx-Server mit Nginx-Serverblöcken einrichten, um mehrere Webanwendungen zu hosten.

Voraussetzungen

· Root-Rechte

· Nginx-Webserver

Schritt 1: Firewall-Einstellung

Der erste Schritt besteht darin, unseren Webserver dazu zu bringen, eingehende Anfragen zur Bereitstellung der Seiten anzunehmen. Die Anfragen kommen von Client-Rechnern. Zu diesem Zweck müssen wir die Firewall so konfigurieren, dass eingehender Anforderungsverkehr über den Standardport 80 und Port 443 zugelassen wird, wenn wir das https-Protokoll verwenden möchten.

Zuerst überprüfen wir den Status der Firewall. Der Ubuntu-Befehl, den wir dazu benötigen, lautet wie folgt.

Klartext
In die Zwischenablage kopieren
Code in neuem Fenster öffnen
EnlighterJS 3 Syntax-Highlighter
$ sudo ufw-Status
$ sudo ufw-Status
$ sudo ufw-Status

Wenn es inaktiv ist, aktivieren wir es mit dem folgenden Befehl.

Klartext
In die Zwischenablage kopieren
Code in neuem Fenster öffnen
EnlighterJS 3 Syntax-Highlighter
$ sudo ufw aktivieren
$ sudo ufw aktivieren
$ sudo ufw aktivieren

Um eingehende Verbindungen über Port 80 zuzulassen, erfüllt der folgende Befehl diesen Zweck.

Klartext
In die Zwischenablage kopieren
Code in neuem Fenster öffnen
EnlighterJS 3 Syntax-Highlighter
$ sudo ufw erlauben 80 /tcp
$ sudo ufw erlaubt 80/tcp
$ sudo ufw erlaubt 80/tcp

Wenn wir 443 statt 80 zulassen müssen, erfüllt der folgende Befehl seinen Zweck.

Klartext
In die Zwischenablage kopieren
Code in neuem Fenster öffnen
EnlighterJS 3 Syntax-Highlighter
$ sudo ufw erlauben 443 /tcp
$ sudo ufw erlaubt 443/tcp
$ sudo ufw erlaubt 443/tcp

Als nächstes überprüfen wir den Status der Firewall. Der folgende Befehl erfüllt diesen Zweck.

Klartext
In die Zwischenablage kopieren
Code in neuem Fenster öffnen
EnlighterJS 3 Syntax-Highlighter
$ sudo ufw Status nummeriert
Status: aktiv
Zur Aktion von
— —— —-
[ 1 ] 443 /tcp ALLOW IN Anywhere
[ 2 ] 80 /tcp ALLOW IN Anywhere
Nameserver:
Adressen: [ 8 . 8.4 . 4 , 8 . 8 . 8 . 8 , 2 . 2,0 . 0 , 1 . 1 . 1 . 1 ]
$ sudo ufw status numbered Status: active To Action From — —— —- [ 1] 443/tcp ALLOW IN Anywhere [ 2] 80/tcp ALLOW IN Anywhere Nameserver: Adressen: [8.8.4.4, 8.8.8.8, 2.2.0.0, 1.1.1.1]
$ sudo ufw Status nummeriert

Status: aktiv

         Zur Aktion von

         -- ------ ----

[ 1] 443/tcp überall zulassen

[ 2] 80/tcp                         ALLOW IN        Anywhere

nameservers:

        addresses: [8.8.4.4, 8.8.8.8, 2.2.0.0, 1.1.1.1]

Schritt 2: Konfigurieren Sie die Nginx-Standardkonfigurationsdatei

Die Nginx-Serverblöcke werden konfiguriert und verwendet, um mehr als eine Website auf demselben Servercomputer auszuführen. Standardmäßig gibt es zum Zeitpunkt der Installation des Nginx-Webservers nur einen Serverblock. Es befindet sich im Pfad /etc/nginx/sites-available/default. Das Folgende ist die Standarddatei unter „sites-available“.

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
##
# Sie sollten sich die folgenden URLs ansehen, um ein solides Verständnis zu erlangen
Anzahl der Nginx-Konfigurationsdateien, um die Leistungsfähigkeit von Nginx voll auszuschöpfen.
# http://wiki.nginx.org/Pitfalls
# http://wiki.nginx.org/QuickStart
# http://wiki.nginx.org/Configuration
#
# Im Allgemeinen möchten Sie diese Datei irgendwohin verschieben und mit einer Bereinigung beginnen
# Datei, aber bewahren Sie diese als Referenz auf. Oder deaktivieren Sie einfach die Option „Sites-aktiviert“.
#
# Ausführlichere Beispiele finden Sie unter /usr/share/doc/nginx-doc/examples/.
##
# Standardserverkonfiguration
#
Server {
listen 80 default_server;
listen [ :: ] : 80 default_server;
root /var/www/thedefaultserver. com ;
# Fügen Sie index.php zur Liste hinzu, wenn Sie PHP verwenden
Indexindex. html ;
Servername _thedefaultserver. com ;
Standort / {
# Erster Versuch, die Anfrage als Datei bereitzustellen
try_files $uri $uri/ = 404 ;
}
}
##
# You should look at the following URL’s in order to grasp a solid understanding
# of Nginx configuration files in order to fully unleash the power of Nginx.
# http://wiki.nginx.org/Pitfalls
# http://wiki.nginx.org/QuickStart
# http://wiki.nginx.org/Configuration
#
# Generally, you will want to move this file somewhere, and start with a clean
# file but keep this around for reference. Or just disable in sites-enabled.
#
# Please see /usr/share/doc/nginx-doc/examples/ for more detailed examples.
##
# Default server configuration
#
server {
listen 80 default_server;
listen [::]:80 default_server;
root /var/www/thedefaultserver.com;
# Add index.php to the list if you are using PHP
index index.html;
server_name _thedefaultserver.com;
location / {
# First attempt to serve request as file
try_files $uri $uri/ =404;
}
}
##
# You should look at the following URL's in order to grasp a solid understanding
# of Nginx configuration files in order to fully unleash the power of Nginx.
# http://wiki.nginx.org/Pitfalls
# http://wiki.nginx.org/QuickStart
# http://wiki.nginx.org/Configuration
#
# Generally, you will want to move this file somewhere, and start with a clean
# file but keep this around for reference. Or just disable in sites-enabled.
#
# Please see /usr/share/doc/nginx-doc/examples/ for more detailed examples.
##
# Default server configuration
#
server {
            listen 80 default_server;
            listen [::]:80 default_server;
            root /var/www/thedefaultserver.com;
            # Add index.php to the list if you are using PHP
            index index.html;
            server_name _thedefaultserver.com;
            location / {
                    # First attempt to serve request as file
try_files $uri $uri/ =404;
            }
}

Schritt 3: Nginx-Serverblöcke konfigurieren

Als Nächstes erstellen wir einen benutzerdefinierten Block, damit wir eine weitere Site auf demselben Servercomputer hosten können. Wir erstellen ein Verzeichnis, das als Root für den Serverblock dient. Nennen wir es Block1. Der folgende Befehl erfüllt diesen Zweck.

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
$ sudo mkdir /var/www/block1. com
$ sudo mkdir /var/www/block1.com
$ sudo mkdir /var/www/block1.com

Als nächstes erstellen wir eine index.html-Seite für diesen Block. Der folgende Befehl erfüllt diesen Zweck.

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
$ echo „Willkommen in Block 1!“ | sudo tee /var/www/block1/index. html > /dev/ null
$ echo « Welcome to Block 1! » | sudo tee /var/www/block1/index.html > /dev/null
$ echo "Welcome to Block 1!" | sudo tee /var/www/block1/index.html > /dev/null

Als Nächstes erstellen wir den Serverblock im Verzeichnis /etc/nginx/sites-available und nennen ihn block1. Es wird eine Serverblockdatei mit dem Servernamen, dem Standort, dem Stammverzeichnis und dem Index haben. Der Dateiname ist block1. Der Pfad mit der Datei ist /etc/nginx/sites-available/block1. Wir können jeden Editor verwenden, um diese Datei zu erstellen.

Das Folgende ist die Blockdatei des Block1-Servers

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
Server {
hör zu 80 ;
hören [ :: ] : 80 ;
root /var/www/block1. com ;
Indexindex. html ;
Servername Block1. com ;
Standort / {
try_files $uri $uri/ = 404 ;
}
}
server {
listen 80;
listen [::]:80;
root /var/www/block1.com;
index index.html;
server_name block1.com;
location / {
try_files $uri $uri/ =404;
}
}
server {
        listen 80;
        listen [::]:80;
        root /var/www/block1.com;
        index index.html;
        server_name block1.com;
        location / {
            try_files $uri $uri/ =404;
        }
}

Als nächstes müssen wir einen symbolischen Link von der Datei zum Verzeichnis mit aktivierten Sites erstellen. Es wird von Nginx beim Start überprüft. Der folgende Befehl erfüllt diesen Zweck.

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
$ sudo ln -s /etc/nginx/sites-available/block1. com /etc/nginx/sites-enabled/
$ sudo ln -s /etc/nginx/sites-available/block1.com /etc/nginx/sites-enabled/
$ sudo ln -s /etc/nginx/sites-available/block1.com /etc/nginx/sites-enabled/

Schritt 3: Starten Sie den Nginx-Server neu

Wir müssen den Server neu starten, um die Änderung eines neuen Serverblocks zu übernehmen und die Webanwendung auf demselben Servercomputer bereitzustellen. Der folgende Befehl erfüllt diesen Zweck

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
$ sudo systemctl startet Nginx neu
$ sudo systemctl restart nginx
$ sudo systemctl restart nginx

Jetzt kann dieser Server die Websites thedefaultserver.com und block1.com bedienen.

Auf diese Weise können wir je nach Bedarf mehrere Serverblöcke hinzufügen.

Abschluss

Um mehrere Websites auf einem einzigen Ubuntu 18.04-Server mit dem Nginx-Webserver auszuführen, müssen wir Nginx-Serverblöcke mit ihren entsprechenden Details konfigurieren. Es enthält einen anderen Pfad, HTML-Seiten, ein Stammverzeichnis und eine Serverblockdatei. Nach erfolgreicher Konfiguration greift der Client-Rechner von einem einzigen Webserver aus auf mehr als eine Website zu.

  • Klicken Sie hier, um mehr über das beste Website-Hosting zu erfahren .