Генератор конфигурации nginx

Создайте полный server block nginx из простых переключателей вживую в вашем браузере. Ваши данные остаются на вашем устройстве.

Ваш домен, пути и расположения сертификатов используются только в вашем браузере для создания конфигурации, которая никогда не загружается. Тем не менее избегайте вставки настоящего содержимого приватного ключа в любые инструменты.

Нужны права на файлы для корня сайта? Попробуйте калькулятор chmod.

Об инструменте Генератор конфигурации nginx

Этот генератор конфигурации nginx превращает несколько полей и переключателей в полный, корректный server block nginx, который можно поместить в sites-available. Выберите статический сайт (root + index с try_files) или обратный прокси (proxy_pass со стандартными заголовками Host, X-Real-IP, X-Forwarded-For и X-Forwarded-Proto, плюс необязательные строки обновления WebSocket). Включите SSL, чтобы слушать на 443, настроить ssl_certificate и ssl_certificate_key и выдать второй server block, который 301-редиректит HTTP на HTTPS. Добавьте gzip, долгоживущее кэширование статических ресурсов, ограничение client_max_body_size и канонический редирект www на без-www — каждое в один клик. Как генератор конфигурации nginx он поддерживает сбалансированные скобки и чистые отступы, а затем позволяет скопировать результат или скачать его как <domain>.conf. Всё работает в вашем браузере, поэтому ваш домен и пути остаются на вашем устройстве.

Возможности

Как использовать Генератор конфигурации nginx

  1. Введите ваш домен и порт прослушивания и выберите статический сайт или обратный прокси.
  2. Заполните root и index или upstream proxy_pass для вашего приложения.
  3. Включите SSL, gzip, кэширование, размер тела и www-редирект по мере необходимости.
  4. Прочитайте живую конфигурацию nginx справа, затем скопируйте или скачайте .conf.

Пример

Ввод

Domain: example.com
Mode: Reverse proxy
Upstream: http://127.0.0.1:3000
SSL: on

Результат

server {
    listen 443 ssl;
    listen [::]:443 ssl;
    server_name example.com www.example.com;

    ssl_certificate /etc/ssl/certs/example.com.crt;
    ssl_certificate_key /etc/ssl/private/example.com.key;

    location / {
        proxy_pass http://127.0.0.1:3000;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
    }
}

server {
    listen 80;
    listen [::]:80;
    server_name example.com www.example.com;

    return 301 https://$host$request_uri;
}

Обратный прокси на 443 с соответствующим блоком редиректа HTTP→HTTPS.

Частые ошибки и устранение неполадок

Часто задаваемые вопросы

Как настроить обратный прокси в nginx?
Выберите «Обратный прокси», введите ваш upstream в proxy_pass (например http://127.0.0.1:3000), и генератор добавит блок location / со стандартными заголовками Host, X-Real-IP, X-Forwarded-For и X-Forwarded-Proto. Включите поддержку WebSocket, если ваше приложение использует ws/wss.
Где находятся server block nginx?
В Debian и Ubuntu сохраните сгенерированный файл как /etc/nginx/sites-available/example.com и сделайте символическую ссылку в sites-enabled. Во многих других дистрибутивах поместите его в /etc/nginx/conf.d/example.com.conf, затем выполните nginx -t и перезагрузите.
Как переключатель SSL меняет конфигурацию?
Он переводит основной сервер на прослушивание 443 ssl, добавляет ssl_certificate и ssl_certificate_key и выдаёт второй server block на порту 80, который 301-редиректит каждый запрос на https://, чтобы посетители всегда попадали на защищённый сайт.
В чём разница между статическим сайтом и обратным прокси здесь?
Статический режим отдаёт файлы из каталога root с index и location с try_files, идеален для HTML, SPA или собранных ресурсов. Режим обратного прокси перенаправляет запросы на upstream-сервер приложения через proxy_pass и proxy-заголовки вместо отдачи файлов.
Можно ли добавить gzip и кэширование статических ресурсов?
Да. Переключатель gzip добавляет настроенный блок gzip для text, JSON, JavaScript, CSS, XML и SVG, а переключатель кэширования добавляет location, который задаёт 30-дневный expires и заголовок immutable Cache-Control для распространённых расширений ресурсов.
Отправляется ли куда-либо мой домен или конфигурация?
Нет. Этот генератор конфигурации nginx работает полностью в вашем браузере, поэтому введённые домен, пути и расположения сертификатов обрабатываются на вашем устройстве, а сгенерированный файл никогда не загружается.

Связанные инструменты

Все инструменты ArrayKit