Nginx Installationsanleitung: Schritt-für-Schritt für Anfänger
Meistern Sie die Ersteinrichtung Ihres Hochgeschwindigkeits-Webservers! Diese umfassende Anleitung führt Anfänger durch die präzise, schrittweise Installation von Nginx sowohl auf Debian/Ubuntu- als auch auf CentOS/RHEL-Systemen. Lernen Sie wichtige Befehle zum Starten, Stoppen und Überprüfen des Dienstes sowie die entscheidende Firewall-Konfiguration, um die sofortige Erreichbarkeit zu gewährleisten. Bringen Sie Ihren Nginx-Webserver in wenigen Minuten zum Laufen.
Nginx-Installationsanleitung: Schritt-für-Schritt für Anfänger
Sie benötigen Nginx installiert, laufend und erreichbar, bevor Sie es als Webserver, Reverse-Proxy, Lastverteiler oder Cache verwenden können. Diese Nginx-Installationsanleitung führt durch die grundlegende Paketmanager-Einrichtung auf Debian/Ubuntu- und RHEL-basierten Linux-Systemen und zeigt dann, wie Sie den Dienst überprüfen und die Firewall öffnen.
Die folgenden Befehle setzen einen systemd-basierten Server und einen Benutzer mit sudo-Zugriff voraus.
Voraussetzungen
Bevor Sie beginnen, stellen Sie sicher, dass Sie Folgendes haben:
- Einen Server oder eine virtuelle Maschine mit Ubuntu, Debian, RHEL, CentOS Stream, Rocky Linux, AlmaLinux oder einer ähnlichen Distribution.
- Einen Nicht-Root-Benutzer mit
sudo-Berechtigungen. - Shell-Zugriff über SSH oder ein lokales Terminal.
Installation auf Debian/Ubuntu-Systemen
Auf Debian-basierten Systemen ist Nginx in den Standard-Repositories verfügbar. Aktualisieren Sie zuerst den Paketindex, damit apt die aktuellen Paketmetadaten sieht.
Schritt 1: Paketlisten aktualisieren
Führen Sie die folgenden Befehle aus, um Ihren lokalen Paketindex zu aktualisieren:
sudo apt update
Schritt 2: Nginx installieren
Verwenden Sie den Befehl apt install, um Nginx und seine Abhängigkeiten herunterzuladen und zu installieren:
sudo apt install nginx
Schritt 3: Installationsstatus überprüfen
Nach Abschluss der Installation wird der Dienst normalerweise automatisch gestartet. Sie können seinen Status mit systemctl überprüfen:
sudo systemctl status nginx
Sie sollten eine Ausgabe sehen, die anzeigt, dass der Dienst active (running) ist.
Installation auf CentOS/RHEL-Systemen
Auf RHEL-basierten Systemen verwenden Sie dnf auf aktuellen Versionen und yum auf älteren. Einige Distributionen enthalten Nginx in ihren eigenen Repositories; andere benötigen möglicherweise EPEL oder ein offizielles Anbieter-Repository. Wenn dnf install nginx das Paket nicht finden kann, aktivieren Sie EPEL oder überprüfen Sie die Nginx-Paketierungshinweise Ihrer Distribution.
Schritt 1: EPEL-Repository installieren
Wenn Ihr System EPEL benötigt, installieren Sie es zuerst.
Für CentOS/RHEL 7:
sudo yum install epel-release
Für CentOS/RHEL 8/9 (mit DNF):
sudo dnf install epel-release
Schritt 2: Nginx installieren
Installieren Sie nun Nginx mit yum oder dnf:
# Mit yum (ältere Systeme)
sudo yum install nginx
# ODER mit dnf (neuere Systeme)
sudo dnf install nginx
Schritt 3: Nginx-Dienst starten und aktivieren
Im Gegensatz zu Debian/Ubuntu startet Nginx auf RHEL-basierten Systemen möglicherweise nicht automatisch nach der Installation. Sie müssen es manuell starten und für den automatischen Start beim Systemboot aktivieren:
# Dienst sofort starten
sudo systemctl start nginx
# Sicherstellen, dass es beim Neustart startet
sudo systemctl enable nginx
# Status überprüfen
sudo systemctl status nginx
Firewall-Konfiguration: HTTP und HTTPS zulassen
Stellen Sie nach der Installation sicher, dass Ihre Firewall Webverkehr zulässt. Wenn der Dienst läuft, aber Port 80 oder 443 blockiert ist, schlägt Ihre Browser-Überprüfung von außerhalb des Servers fehl.
Mit UFW auf Ubuntu/Debian
Das Nginx-Paket von Ubuntu registriert normalerweise UFW-Anwendungsprofile. Öffnen Sie sowohl HTTP als auch HTTPS, wenn Sie bald TLS hinzufügen möchten.
# Verfügbare Anwendungsprofile auflisten
sudo ufw app list
# Standard-Webverkehr zulassen (HTTP/HTTPS)
sudo ufw allow 'Nginx Full'
# Firewall neu laden, um Änderungen zu übernehmen
sudo ufw reload
Mit Firewalld auf RHEL-basierten Systemen
Firewalld verwendet Zonen zur Verwaltung von Regeln. Diese Befehle fügen die standardmäßigen http- und https-Dienste zur aktiven Standardzone hinzu.
# HTTP-Verkehr zulassen (Port 80)
sudo firewall-cmd --permanent --add-service=http
# HTTPS-Verkehr zulassen (Port 443)
sudo firewall-cmd --permanent --add-service=https
# Firewall-Regeln neu laden
sudo firewall-cmd --reload
Überprüfen, ob Nginx funktioniert
Nachdem das Paket installiert und die Firewall geöffnet ist, bestätigen Sie, dass Nginx die Standardseite ausliefert.
Methode 1: Webbrowser-Überprüfung
Öffnen Sie Ihren bevorzugten Webbrowser und navigieren Sie zur IP-Adresse oder Domain Ihres Servers:
http://IHRE_SERVER_IP_ADRESSE
Bei Erfolg sollten Sie die standardmäßige Nginx-Willkommensseite sehen. Der genaue Text und Dateipfad variieren je nach Distribution.
Methode 2: Befehlszeilen-Überprüfung
Verwenden Sie curl vom Server selbst, um den lokalen Listener zu überprüfen:
curl http://localhost
Dieser Befehl sollte HTML zurückgeben. Wenn er lokal fehlschlägt, überprüfen Sie systemctl status nginx und /var/log/nginx/error.log, bevor Sie DNS oder Cloud-Firewall-Regeln untersuchen.
Wichtige Nginx-Verwaltungsbefehle
Nach der Installation verwalten Sie Nginx normalerweise mit systemctl:
| Aktion | Befehl |
|---|---|
| Server starten | sudo systemctl start nginx |
| Server stoppen | sudo systemctl stop nginx |
| Neustarten (Stoppen dann Starten) | sudo systemctl restart nginx |
| Neu laden (Konfigurationsänderungen ohne Ausfallzeit übernehmen) | sudo systemctl reload nginx |
| Status überprüfen | sudo systemctl status nginx |
| Autostart beim Booten deaktivieren | sudo systemctl disable nginx |
Testen Sie die Konfigurationssyntax vor jedem Neuladen:
sudo nginx -t
sudo systemctl reload nginx
Diese Gewohnheit fängt fehlende Semikolons, falsche Include-Pfade und doppelte listen-Konflikte ab, bevor sie den Verkehr unterbrechen.
Nächster Schritt: Einen Server-Block erstellen
Die Standardkonfiguration dient einer vom Paket bereitgestellten Willkommensseite. Auf Debian/Ubuntu befinden sich Webdateien normalerweise unter /var/www/html. Auf RHEL-basierten Systemen ist das Standard-Root-Verzeichnis oft /usr/share/nginx/html.
Ihr nächster Schritt ist die Erstellung eines Server-Blocks für Ihre Domain. Debian/Ubuntu-Layouts verwenden oft /etc/nginx/sites-available/ mit Symlinks nach /etc/nginx/sites-enabled/. RHEL-basierte Layouts verwenden häufiger Dateien unter /etc/nginx/conf.d/.
Danach fügen Sie TLS hinzu, weisen den DNS-Eintrag Ihrer Domain auf den Server und führen sudo nginx -t vor dem Neuladen aus. An diesem Punkt ist Ihre Nginx-Installation bereit für die eigentliche Site-Konfiguration.