Nginx Config Generator

Generate production-ready Nginx configurations — static sites, SPAs, reverse proxies, and PHP apps

Server Type
nginx.conf
server {
    listen 80;
    server_name example.com;

    client_max_body_size 10m;

    root /var/www/html;
    index index.html;

    gzip on;
    gzip_vary on;
    gzip_min_length 1024;
    gzip_types text/plain text/css application/json application/javascript text/xml application/xml text/javascript image/svg+xml;

    add_header X-Frame-Options "SAMEORIGIN" always;
    add_header X-Content-Type-Options "nosniff" always;
    add_header X-XSS-Protection "1; mode=block" always;
    add_header Referrer-Policy "strict-origin-when-cross-origin" always;

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

    location ~* \.(js|css|png|jpg|jpeg|gif|ico|svg|woff|woff2|ttf|eot)$ {
        expires 30d;
        add_header Cache-Control "public, immutable";
    }

    location ~ /\. {
        deny all;
    }
}

Nginx Config Generator

Generate production-ready Nginx configurations — static sites, SPAs, reverse proxies, and PHP apps

Features

  • Static site, SPA, reverse proxy, or PHP server presets
  • TLS / HTTPS redirect block with Let's Encrypt-friendly defaults
  • Gzip compression + browser-cache headers for static assets
  • Security headers (X-Frame-Options, X-Content-Type-Options, Referrer-Policy, Permissions-Policy)
  • Optional rate limiting with `limit_req_zone` hint + per-location `limit_req`

How to use

  1. Виберіть тип сервера (статичний, SPA, зворотний проксі або PHP).
  2. Введіть ім'я вашого домену та налаштуйте шляхи.
  3. Увімкніть такі функції, як SSL, gzip, кешування та заголовки безпеки.
  4. Скопіюйте згенеровану конфігурацію та збережіть її на своєму сервері.

Tips & Best Practices

  • `limit_req_zone` MUST live in the `http {}` block, not inside `server {}`. The generator emits a comment showing where to put it.
  • Test the config with `nginx -t` before reloading. The output is template-grade; expect to tune for your specific environment.
  • For Let's Encrypt, run certbot once to fetch certs; the paths in the generated config (`/etc/letsencrypt/live/<domain>/`) are the standard locations.
  • Reverse-proxy mode forwards to `proxy_pass http://localhost:3000` — adjust the upstream URL for your backend.
  • For multi-domain configs, generate per-domain server blocks and concatenate them in `/etc/nginx/sites-available/`.

FAQ

Яка різниця між статичним режимом і режимом SPA?

Статичний режим повертає 404 для невідомих шляхів. Режим SPA перенаправляє всі шляхи на index.html, забезпечуючи маршрутизацію на стороні клієнта (React, Angular, Vue).

Чи слід вмикати gzip?

Так, стиснення gzip зменшує розмір файлів на 60–80 % і значно покращує час завантаження сторінок.

Як налаштувати SSL?

Увімкніть SSL, укажіть шляхи до сертифіката та ключа, і генератор автоматично створить блок перенаправлення з HTTP на HTTPS.