Назад до інструментів
Генератор конфігурації Nginx
Складіть повний серверний блок для статичного сайту, зворотного проксі чи балансувальника навантаження. SSL, gzip, кешування й пастки шляхів запиту, що вилазять у продакшені, вже враховано за вас — скопіюйте, збережіть, перезавантажте.
Сервер
Домен і режим
Оберіть, що nginx має робити із запитами на цей домен.
TLS
SSL / HTTPS
Тут припускається, що сертифікат уже видано. Потрібно спершу його отримати? Скористайтеся Генератором команд для SSL-сертифікатів для команд Certbot — цей крок сюди не входить.
Продуктивність
Gzip, кешування й ліміти завантаження
Перевірка
Поширені пастки nginx, перевірені наживо
Це помилки конфігурації, які проходять nginx -t без скарг і проявляються лише тоді, коли на сервер приходить трафік.
Правильна директива listen для TLS
listen 443 ssl; — а не просто listen 443; — тож nginx справді завершує TLS на цьому порту, а не мовчки обслуговує звичайний HTTP.
client_max_body_size задано явно
10m проходить без обмежень, тож завантаження до цього розміру не спричинять мовчазну 413.
Результат
Згенерований серверний блок
конфігурація 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;
}
}зберегти й активувати
# 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
Керуєте власним ігровим сервером?
Ігрові сервери Wespner із захистом від DDoS, дисками NVMe та активацією за кілька хвилин.