Nginx Installationsanleitung: Schritt für Schritt für Anfänger
Willkommen in der Welt des Hochleistungs-Web-Servings! Nginx (ausgesprochen "engine-x") ist zum De-facto-Standard für die Bereitstellung statischer Inhalte, als Reverse-Proxy, Load Balancer und HTTP-Cache geworden. Für Anfänger ist die richtige Erstinstallation der entscheidende erste Schritt, um seine Geschwindigkeit und Effizienz zu nutzen.
Diese Anleitung bietet klare, umsetzbare Schritt-für-Schritt-Anleitungen für die Installation von Nginx auf den gängigsten Linux-Distributionen (Debian/Ubuntu und CentOS/RHEL). Wir werden auch wesentliche Schritte nach der Installation abdecken, um sicherzustellen, dass Ihr Webserver korrekt läuft und bereit ist, Datenverkehr zu verarbeiten.
Voraussetzungen
Stellen Sie vor Beginn des Installationsvorgangs sicher, dass Sie über Folgendes verfügen:
- Einen Server oder eine virtuelle Maschine, auf der eine unterstützte Linux-Distribution (Ubuntu/Debian oder CentOS/RHEL) läuft.
- Einen Nicht-Root-Benutzer mit
sudo-Berechtigungen, der für administrative Aufgaben konfiguriert ist. - Grundlegende Kenntnisse der Linux-Kommandozeilenschnittstelle (CLI).
Installation auf Debian/Ubuntu-Systemen
Auf Debian-basierten Systemen ist Nginx leicht in den Standard-Paket-Repositories verfügbar. Wir empfehlen, zuerst die Paketliste zu aktualisieren, um sicherzustellen, dass Sie die neueste verfügbare Version erhalten.
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 Red Hat Enterprise Linux (RHEL)-Derivaten wie CentOS oder Fedora wird Nginx normalerweise mit dem Paketmanager yum oder dnf installiert. Da Nginx möglicherweise nicht im Standard-Base-Repository enthalten ist, wird oft die Installation aus dem offiziellen EPEL (Extra Packages for Enterprise Linux)-Repository für die neueste stabile Version empfohlen.
Schritt 1: EPEL-Repository installieren
Installieren Sie zuerst das EPEL-Repository, das viele häufig verwendete, qualitativ hochwertige Pakete enthält, die nicht in den Standard-Repositories enthalten sind.
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 jetzt 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 nach der Installation auf RHEL-basierten Systemen möglicherweise nicht automatisch. Sie müssen es manuell starten und aktivieren, damit es beim Systemstart läuft:
# Dienst sofort starten
sudo systemctl start nginx
# Sicherstellen, dass er beim Neustart startet
sudo systemctl enable nginx
# Status prüfen
sudo systemctl status nginx
Firewall-Konfiguration: HTTP/HTTPS-Datenverkehr zulassen
Ein entscheidender Schritt nach der Installation ist sicherzustellen, dass Ihre Firewall externe Verbindungen zulässt, um den Webserver zu erreichen. Wenn Sie dies überspringen, können externe Benutzer Ihre Website nicht sehen.
UFW verwenden (Uncomplicated Firewall - üblich auf Ubuntu/Debian)
Nginx registriert während der Installation spezifische Profile bei UFW. Wir empfehlen, Port 80 (HTTP) und optional Port 443 (HTTPS) zu öffnen.
# 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
Firewalld verwenden (üblich auf CentOS/RHEL)
Firewalld verwendet Zonen zur Verwaltung von Regeln. Wir fügen normalerweise Dienste zur public-Zone 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
Verifizierung: Überprüfen, ob Nginx betriebsbereit ist
Nachdem die Installation abgeschlossen und die Firewall konfiguriert ist, können Sie überprüfen, ob Nginx Inhalte korrekt bereitstellt.
Methode 1: Überprüfung im Webbrowser
Öffnen Sie Ihren bevorzugten Webbrowser und navigieren Sie zur IP-Adresse oder zum Domainnamen Ihres Servers:
http://IHRE_SERVER_IP_ADRESSE
Wenn erfolgreich, sollten Sie die Standard-Nginx-Willkommensseite sehen, auf der normalerweise steht: "Welcome to nginx!"
Methode 2: Überprüfung über die Befehlszeile
Verwenden Sie den Befehl curl, um den Inhalt der Standard-Indexseite direkt vom Localhost des Servers abzurufen:
curl http://localhost
Dieser Befehl sollte den HTML-Quellcode der Willkommensseite zurückgeben.
Wichtige Nginx-Verwaltungsbefehle
Nach der Installation werden Sie systemctl häufig zur Verwaltung des Nginx-Prozesses verwenden. Hier sind die gängigsten Befehle:
| Aktion | Befehl |
|---|---|
| Server starten | sudo systemctl start nginx |
| Server stoppen | sudo systemctl stop nginx |
| Neustart (Stoppen und dann Starten) | sudo systemctl restart nginx |
| Neu laden (Konfigurationsänderungen ohne Ausfallzeit anwenden) | sudo systemctl reload nginx |
| Status prüfen | sudo systemctl status nginx |
| Automatischer Start beim Booten deaktivieren | sudo systemctl disable nginx |
Tipp für Best Practices: Wenn Sie Änderungen an Konfigurationsdateien (wie
/etc/nginx/nginx.conf) vornehmen, testen Sie immer die Syntax, bevor Sie neu laden. Verwenden Siesudo nginx -t, um nach Fehlern zu suchen. Wenn der Test erfolgreich ist, verwenden Siesudo systemctl reload nginx, um die Änderungen reibungslos anzuwenden.
Nächste Schritte: Erstkonfiguration
Herzlichen Glückwunsch, Nginx ist installiert und läuft! Die Standardkonfiguration liefert Inhalte aus /var/www/html/index.nginx-debian.html (auf Debian/Ubuntu) oder /usr/share/nginx/html/index.html (auf CentOS/RHEL).
Ihre nächsten Schritte umfassen die Erstellung eines Server Blocks (oft als Virtual Host bezeichnet), um zu definieren, wo sich Ihre eigentlichen Website-Dateien befinden und wie Nginx Anfragen für Ihre Domain verarbeiten soll. Konfigurationsdateien für diese Blöcke werden normalerweise in /etc/nginx/sites-available/ gespeichert und mit /etc/nginx/sites-enabled/ verlinkt.
Diese Erstinstallation bietet die Grundlage, auf der Sie Hochleistungs-Hosting-Umgebungen, Load-Balancing-Lösungen und sichere Proxy-Setups aufbauen können.