Einführung
Nginx ist eine kostenlose Open-Source-Linux-Anwendung für Webserver. Er fungiert als Reverse-Proxy-Server, indem er den Webverkehr an bestimmte Server weiterleitet.
Nginx wird für Sicherheit und Lastenausgleich verwendet, kann aber auch unabhängig als Webserver fungieren.
Diese Anleitung hilft Ihnen bei der Installation von Nginx auf Ubuntu 20.04 Linux (Focal Fossa).
Voraussetzungen
- Ein System, auf dem Ubuntu 20.04 Linux ausgeführt wird
- Ein Benutzerkonto mit sudo oderroot Privilegien
- Zugriff auf ein Terminalfenster/eine Befehlszeile (klicken Sie auf Aktivitäten> Suchen> Geben Sie Terminal ein )
Schritt 1:Software-Repositories aktualisieren
Es ist wichtig, die Repository-Listen zu aktualisieren, bevor Sie neue Software installieren. Dadurch wird sichergestellt, dass die neuesten Updates und Patches installiert sind.
Öffnen Sie ein Terminalfenster und geben Sie Folgendes ein:
sudo apt-get update
Warten Sie, bis der Vorgang abgeschlossen ist.
Schritt 2:Nginx aus Ubuntu-Repositories installieren
Nginx ist in den Standard-Repositories von Ubuntu 20.04 enthalten. Installieren Sie es, indem Sie den folgenden Befehl eingeben:
sudo apt-get install nginx
Schritt 3:Überprüfen Sie die Installation
Überprüfen Sie, ob Nginx korrekt installiert wurde, indem Sie die Softwareversion überprüfen. Geben Sie Folgendes ein:
nginx -v
Das System sollte die Softwareversion von Nginx anzeigen.
Schritt 4:Steuern des Nginx-Dienstes
Das Verhalten von Nginx kann angepasst werden. Verwenden Sie dies, um Nginx zu starten oder zu stoppen oder um Nginx beim Booten zu aktivieren oder zu deaktivieren.
Überprüfen Sie zunächst den Status des Nginx-Dienstes:
sudo systemctl status nginx
Wenn der Status active (running)
anzeigt , Nginx wurde bereits gestartet. Drücken Sie CTRL
+z
um die Statusanzeige zu verlassen.
Wenn Nginx nicht ausgeführt wird, verwenden Sie den folgenden Befehl, um den Nginx-Dienst zu starten:
sudo systemctl start nginx
Geben Sie Folgendes ein, um Nginx so einzustellen, dass es beim Systemstart geladen wird:
sudo systemctl enable nginx
Geben Sie Folgendes ein, um den Nginx-Dienst zu stoppen:
sudo systemctl stop nginx
So verhindern Sie, dass Nginx beim Systemstart geladen wird:
sudo systemctl disable nginx
So laden Sie den Nginx-Dienst neu (wird verwendet, um Konfigurationsänderungen anzuwenden):
sudo systemctl reload nginx
Für einen harten Neustart von Nginx:
sudo systemctl restart nginx
Schritt 5:Nginx-Datenverkehr zulassen
Nginx benötigt Zugriff über die Firewall des Systems. Dazu installiert Nginx eine Reihe von Profilen für den Ubuntu-Standard ufw (Unkomplizierte Firewall).
Beginnen Sie mit der Anzeige der verfügbaren Nginx-Profile:
sudo ufw app list
Das System sollte Folgendes anzeigen:
Geben Sie Folgendes ein, um Nginx Zugriff über die standardmäßige Ubuntu-Firewall zu gewähren:
sudo ufw allow 'nginx http'
Das System sollte Rules updated
anzeigen .
Aktualisieren Sie die Firewall-Einstellungen, indem Sie Folgendes eingeben:
sudo ufw reload
Geben Sie für verschlüsselten (https) Datenverkehr Folgendes ein:
sudo ufw allow 'nginx https'
Geben Sie Folgendes ein, um beides zuzulassen:
sudo ufw allow 'nginx full'
Schritt 6:Nginx testen
Stellen Sie sicher, dass der Nginx-Dienst ausgeführt wird, wie in Schritt 4. Öffnen Sie einen Webbrowser und navigieren Sie zur folgenden Webadresse:
http://127.0.0.1
Das System sollte die Nginx-Willkommensseite anzeigen.
Wenn das System keine grafische Oberfläche hat, kann die Nginx-Willkommensseite mit curl im Terminal geladen werden :
sudo apt-get install curl
curl –i 127.0.0.1
Das System sollte den HTML-Code für die Nginx-Willkommensseite anzeigen.
Schritt 7:Konfigurieren Sie einen Serverblock (optional)
In Nginx ist ein Serverblock eine Konfiguration, die als eigener Server fungiert. Standardmäßig ist in Nginx ein Serverblock vorkonfiguriert.
Es befindet sich unter /var/www/html . Es kann jedoch mit mehreren Serverblöcken für verschiedene Sites konfiguriert werden.
1. Erstellen Sie ein Verzeichnis für die Testdomäne
Erstellen Sie in einem Terminalfenster ein neues Verzeichnis, indem Sie Folgendes eingeben:
sudo mkdir -p /var/www/test_domain.com/html
2. Eigentum und Berechtigungen konfigurieren
Verwenden Sie chmod
Eigentums- und Berechtigungsregeln konfigurieren:
sudo chown –R $USER:$USER /var/www/test_domain.com
sudo chmod –R 755 /var/www/test_domain.com
3. Erstellen Sie eine index.html-Datei für den Server-Block
Öffnen Sie index.html zur Bearbeitung in einem Texteditor Ihrer Wahl (wir verwenden den Nano-Texteditor):
sudo nano /var/www/test_domain.com/html/index.html
Geben Sie im Texteditor den folgenden HTML-Code ein:
<html>
<head>
<title>Welcome to test_domain.com!</title>
</head>
<body>
<h1>This message confirms that your Nginx server block is working. Great work!</h1>
</body>
</html>
Drücken Sie CTRL
+o
um die Änderungen zu schreiben, dann CTRL
+x
zum Beenden.
4. Nginx-Server-Blockkonfiguration erstellen
Öffnen Sie die Konfigurationsdatei zum Bearbeiten:
sudo nano /etc/nginx/sites-available/test_domain.com
Geben Sie den folgenden Code ein:
server {
listen 80;
root /var/www/test_domain.com/html;
index index.html index.htm index.nginx.debian.html;
server_name test_domain.com www.test_domain.com;
location / {
try_files $uri $uri/ =404;
}
}
5. Erstellen Sie einen symbolischen Link, den Nginx beim Start lesen kann
Erstellen Sie eine symbolische Verbindung zwischen dem Serverblock und dem Startverzeichnis, indem Sie Folgendes eingeben:
sudo ln –s /etc/nginx/sites-available/test_domain.com /etc/nginx/sites-enabled
6. Starten Sie den Nginx-Dienst neu
Starten Sie Nginx neu, indem Sie den folgenden Befehl ausführen:
sudo systemctl restart nginx
7. Testen Sie die Konfiguration
sudo nginx –t
Das System sollte melden, dass die Syntax der Konfigurationsdatei in Ordnung ist und dass der Test der Konfigurationsdatei erfolgreich war.
8. Ändern Sie die Hosts-Datei (optional)
Wenn Sie einen Testdomänennamen verwenden, der nicht registriert oder öffentlich ist, wird die Datei /etc/hosts Datei muss möglicherweise geändert werden, um test_domain.com anzuzeigen Seite.
Zeigen Sie die IP-Adresse des Systems mit dem folgenden Befehl an:
hostname –i
Notieren Sie sich die angezeigte IP-Adresse.
Öffnen Sie als Nächstes /etc/hosts zum Bearbeiten:
sudo nano /etc/hosts
Fügen Sie in einem leeren Bereich direkt unter den localhost-Informationen die folgende Zeile hinzu:
127.0.1.1 test_domain.com www.test_domain.com
Ersetzen Sie 127.0.0.1 durch die oben angezeigte IP-Adresse. Drücken Sie CTRL
+o
um die Änderungen zu speichern, dann CTRL
+x
zum Beenden.
9. Überprüfen Sie test_domain.com in einem Webbrowser
Öffnen Sie ein Browserfenster und navigieren Sie zu test_domain.com (oder der Domänenname, den Sie in Nginx konfiguriert haben).
Sie sollten die Nachricht sehen, die Sie in Teil 3 eingegeben haben.
Wichtige Speicherorte von Nginx-Dateien
Standardmäßig speichert Nginx verschiedene Konfigurations- und Protokolldateien an den folgenden Orten:
- /var/www/html – Website-Inhalte, wie sie von Besuchern gesehen werden.
- /etc/nginx – Speicherort der wichtigsten Nginx-Anwendungsdateien.
- /etc/nginx/nginx.conf – Die Hauptkonfigurationsdatei von Nginx.
- /etc/nginx/sites-available – Liste aller Websites, die über Nginx konfiguriert wurden.
- /etc/nginx/sites-enabled – Liste der Websites, die aktiv von Nginx bedient werden.
- /var/log/nginx/access.log – Zugriffsprotokolle, die jede Anfrage an Ihren Server verfolgen.
- /var/log/ngins/error .protokollieren – Ein Protokoll aller in Nginx generierten Fehler.