Zum Inhalt springen
ToolMug

Nginx-Konfigurationsgenerator

Geben Sie Ihre Domain ein, wählen Sie den Seitentyp und aktivieren Sie die benötigten Funktionen, um eine fertige nginx-Serverkonfiguration zu erhalten. Sie deckt Reverse Proxys (Node.js-, Python-, Java-Anwendungen), statische Websites, Single-Page-Apps (React, Vue) und PHP ab, mit HTTP-zu-HTTPS- und www-Weiterleitung, WebSocket, Gzip und Caching statischer Dateien.

Läuft in Ihrem Browser – Ihre Eingaben werden nicht hochgeladen

HTTPS
Zusätzliches

0 behält den nginx-Standardwert von 1 MB bei.

Besorgen Sie zuerst das Zertifikat, zum Beispiel: certbot certonly --webroot -w /var/www/letsencrypt -d example.com -d www.example.com. Führen Sie dann nginx -t aus und laden Sie nginx neu.

So funktioniert es

  1. Geben Sie die Domain ein und wählen Sie den Seitentyp – eine Upstream-Adresse für einen Reverse Proxy oder den Web-Root für die anderen.
  2. Aktivieren Sie je nach Bedarf HTTPS, HTTP/2, HSTS, die www-Weiterleitung, Gzip, Caching und Sicherheits-Header.
  3. Kopieren Sie die Konfiguration oder laden Sie sie herunter, legen Sie sie in /etc/nginx/conf.d/ ab, führen Sie nginx -t aus und laden Sie nginx neu.

Optionen erklärt

Reverse Proxy
Leitet an die Upstream-Adresse weiter und gibt Host, X-Real-IP, X-Forwarded-For und X-Forwarded-Proto weiter, damit das Backend die echte IP und das Schema des Besuchers sieht.
Single-Page-App
Unbekannte Pfade fallen auf index.html zurück, sodass Router im History-Modus (React Router, Vue Router) beim Neuladen keinen 404 auslösen.
HTTPS
Die Zertifikatspfade folgen den Standards von certbot (Let's Encrypt), und HTTP-Anfragen erhalten eine 301-Weiterleitung zu HTTPS. HTTP/2 verwendet die Form listen 443 ssl http2, die mit jeder nginx-Version funktioniert.
HSTS
Weist Browser an, für die Domain und alle ihre Subdomains ein Jahr lang nur HTTPS zu verwenden. Stellen Sie zuerst sicher, dass jede Subdomain HTTPS unterstützt, sonst werden sie unerreichbar.

Beispiel: Single-Page-App mit HTTPS und www

Mit der Domain example.com und den angehakten Optionen Single-Page-App, HTTPS, HTTP/2 und „Auch www. beantworten und darauf umleiten“ (und ausgeschalteter Gzip-Komprimierung, ausgeschalteten Sicherheits-Headern und ausgeschaltetem „Langes Caching für statische Dateien“, um es kurz zu halten) schreibt der Generator drei Server-Blöcke:

  1. Port 80 beantwortet beide Namen, hält /.well-known/acme-challenge/ für die Zertifikatserneuerung erreichbar und leitet alles andere mit einem 301 auf https://example.com$request_uri um.
  2. Port 443 für www.example.com verwendet dasselbe Zertifikat und gibt einen 301 auf die Domain ohne www zurück.
  3. Port 443 für example.com liefert die Website aus:
    root /var/www/example.com;
    index index.html;

    location / {
        try_files $uri $uri/ /index.html;
    }

Beide HTTPS-Blöcke verweisen auf /etc/letsencrypt/live/example.com/fullchain.pem und privkey.pem, erlauben TLS 1.2 und 1.3 und verwenden einen gemeinsamen Sitzungs-Cache von 10 MB mit einem Sitzungs-Timeout von einem Tag. Die Zeile try_files sorgt dafür, dass das Neuladen einer clientseitigen Route wie /settings die App statt eines 404 zurückgibt.

Häufig gestellte Fragen

Warum warnt nginx -t, dass der Parameter http2 veraltet ist?

Seit nginx 1.25.1 wird die separate Direktive http2 on; bevorzugt, aber 1.24 – ausgeliefert mit Ubuntu 24.04 und anderen – versteht sie nicht. Die Form listen ... http2 funktioniert überall; neuere Versionen geben nur eine Warnung aus.

Muss das Zertifikat www enthalten?

Ja, wenn die www-Weiterleitung aktiviert ist. Fordern Sie beide Namen an, zum Beispiel certbot -d example.com -d www.example.com.

Uploads schlagen mit 413 Request Entity Too Large fehl?

nginx erlaubt standardmäßig einen 1-MB-Request-Body. Stellen Sie die maximale Upload-Größe auf den benötigten Wert, zum Beispiel 100.

WebSocket-Verbindungen scheitern über den Proxy?

Der Proxy muss die Header Upgrade und Connection weiterleiten. Das Aktivieren von WebSocket-Unterstützung fügt sie hinzu und erhöht das Lese-Timeout auf eine Stunde.

Datenschutz

Dieses Tool läuft vollständig in Ihrem Browser. Ihre Dateien und Texte werden auf Ihrem Gerät verarbeitet und nie auf unsere Server hochgeladen.

Ähnliche Tools