Powrót do narzędzi

Generator konfiguracji Nginx

Zbuduj kompletny blok server dla strony statycznej, reverse proxy lub load balancera. SSL, gzip, cache i pułapki ścieżek żądań, które gryzą na produkcji, są obsłużone za ciebie — skopiuj, zapisz, przeładuj.

Serwer

Domena i tryb

Wybierz, co nginx ma zrobić z żądaniami dla tej domeny.

TLS

SSL / HTTPS

Zakłada to, że certyfikat jest już wystawiony. Musisz go faktycznie uzyskać? Użyj Generatora poleceń certyfikatów SSL po polecenia Certbota — ten krok wykracza tutaj poza zakres.

Wydajność

Gzip, cache i limity przesyłania

Walidacja

Typowe pułapki nginx, sprawdzane na żywo

To błędy konfiguracji, które przechodzą nginx -t bez zastrzeżeń i ujawniają się dopiero, gdy na serwer trafi ruch.

Poprawna dyrektywa listen dla TLS

listen 443 ssl; — nie tylko listen 443; — więc nginx faktycznie kończy TLS na tym porcie zamiast po cichu serwować zwykłe HTTP.

client_max_body_size jest ustawione jawnie

10m jest dopuszczane, więc uploady do tego rozmiaru nie skończą się cichym błędem 413.

Wynik

Wygenerowany blok server

konfiguracja nginx

# --- HTTP -> HTTPS redirect ---
server {
    listen 80;
    listen [::]:80;
    server_name play.wespner.eu;
    return 301 https://$host$request_uri;
}

# --- HTTPS server ---
server {
    listen 443 ssl;
    listen [::]:443 ssl;
    http2 on;
    server_name play.wespner.eu;

    ssl_certificate     /etc/letsencrypt/live/play.wespner.eu/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/play.wespner.eu/privkey.pem;
    ssl_protocols TLSv1.2 TLSv1.3;
    ssl_ciphers ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305;
    ssl_prefer_server_ciphers off;
    ssl_session_cache shared:SSL:10m;
    ssl_session_timeout 10m;

    # Compression
    gzip on;
    gzip_vary on;
    gzip_comp_level 5;
    gzip_min_length 256;
    gzip_types text/plain text/css application/json application/javascript text/xml application/xml text/javascript image/svg+xml;

    client_max_body_size 10m;

    # Static asset caching
    location ~* \.(css|js|mjs|json|jpg|jpeg|png|gif|svg|webp|ico|woff2?|ttf|eot)$ {
        expires 30d;
        add_header Cache-Control "public, no-transform";
    }

    root /var/www/play.wespner.eu/html;
    index index.html index.htm;

    location / {
        try_files $uri $uri/ =404;
    }
}

zapisz i aktywuj

# Save the block above as:
/etc/nginx/sites-available/play.wespner.eu

# Enable it and reload:
sudo ln -s /etc/nginx/sites-available/play.wespner.eu /etc/nginx/sites-enabled/
sudo nginx -t && sudo systemctl reload nginx

Prowadzisz własny serwer gier?

Serwery gier Wespner z ochroną DDoS, dyskami NVMe i aktywacją w kilka minut.

Zobacz hosting