Konfigurationsstruktur ·
Virtual Hosts ·
Reverse Proxy ·
Load Balancing ·
SSL/TLS ·
Rewrite & Redirect
NGINX ist ein leistungsstarker Webserver, Reverse Proxy und Load Balancer. Diese Cheatsheet fasst die wichtigsten Konfigurationsdirektiven und Einsatzszenarien zusammen.
NGINX-Konfiguration besteht aus einer Hauptkonfigurationsdatei und mehreren Server-Blöcken (Virtual Hosts) für einzelne Websites oder Dienste.
| Datei / Verzeichnis | Beschreibung |
|---|---|
| /etc/nginx/nginx.conf | Hauptkonfigurationsdatei (global) |
| /etc/nginx/sites-available/ | Verfügbare Virtual Hosts (Konfigurationen) |
| /etc/nginx/sites-enabled/ | Aktive Virtual Hosts (Symlinks zu sites-available) |
| /etc/nginx/conf.d/ | Zusätzliche Konfigurationen (global) |
| /var/log/nginx/ | Zugriffs- und Fehlerlogs |
nginx -t vor jedem Reload, um die Konfiguration auf Syntaxfehler zu prüfen – das verhindert Ausfallzeiten.
Virtual Hosts (Server-Blöcke) definieren, wie NGINX auf Anfragen für bestimmte Domainnamen reagiert – mit eigenem Document Root, Logging und Konfiguration.
sites-available und aktivieren Sie sie mit einem Symlink in sites-enabled.
Reverse Proxy leitet eingehende Anfragen an einen oder mehrere Backend-Server weiter – ideal für Node.js, Python, Java oder andere Anwendungen hinter NGINX.
proxy_pass mit trailing Slash (http://localhost:3000/) wird der location-Pfad ersetzt. Ohne Slash wird er an den Backend-Pfad angehängt.
Load Balancing verteilt eingehende Anfragen auf mehrere Backend-Server, um Auslastung zu verteilen und Ausfallsicherheit zu erhöhen.
| Methode | Beschreibung |
|---|---|
| Round Robin (Standard) | Anfragen werden gleichmäßig verteilt |
| least_conn | An den Server mit den wenigsten aktiven Verbindungen |
| ip_hash | Selbe Client-IP geht immer zum selben Server (Session-Sticky) |
| weight=2 | Gewichtung für Server (höheres Gewicht = mehr Anfragen) |
ip_hash. Für reine APIs ist least_conn oft die beste Wahl.
SSL/TLS verschlüsselt die Verbindung zwischen Client und Server. Let's Encrypt bietet kostenlose Zertifikate, die automatisch erneuert werden können.
certbot (certbot --nginx -d example.com). Die Zertifikate werden automatisch erneuert.
Rewrite & Redirect ermöglichen die Umleitung von URLs, das Umschreiben von Pfaden und die Implementierung von Clean URLs.
try_files ist die empfohlene Methode für SPAs (Single Page Applications) – sie prüft, ob eine Datei existiert, und fällt sonst auf index.html zurück.
nginx -t
server
proxy_pass
upstream
ssl_certificate
return 301
nginx -t ·
systemctl reload nginx ·
proxy_pass http://localhost:3000