Генератор конфигурации 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. Всё работает в вашем браузере, поэтому ваш домен и пути остаются на вашем устройстве.
Возможности
- Режим статического сайта с root, index и блоком location с try_files
- Режим обратного прокси с proxy_pass и стандартными строками proxy_set_header
- Необязательная поддержка WebSocket через proxy_http_version, заголовки Upgrade и Connection
- Переключатель SSL, добавляющий listen 443 ssl плюс сервер 301-редиректа HTTP→HTTPS
- Блок gzip, настроенный для text, JSON, JavaScript, CSS, XML и SVG
- Location кэширования статических ресурсов с expires и immutable Cache-Control
- Поле client_max_body_size и канонические редиректы www↔без-www
- Скопируйте server block или скачайте его как example.com.conf
Как использовать Генератор конфигурации nginx
- Введите ваш домен и порт прослушивания и выберите статический сайт или обратный прокси.
- Заполните root и index или upstream proxy_pass для вашего приложения.
- Включите SSL, gzip, кэширование, размер тела и www-редирект по мере необходимости.
- Прочитайте живую конфигурацию 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 -t сообщает «cannot load certificate» или блок SSL не запускается. — Укажите в ssl_certificate ваш файл fullchain, а в ssl_certificate_key — соответствующий приватный ключ, и убедитесь, что оба пути существуют и доступны для чтения nginx.
- Приложение за обратным прокси показывает неправильный IP клиента или ломается за HTTPS. — Сохраните сгенерированные строки proxy_set_header, чтобы Host, X-Real-IP, X-Forwarded-For и X-Forwarded-Proto доходили до вашего upstream, и читайте их из нужных заголовков в вашем приложении.
- Соединения WebSocket обрываются с ошибкой 400 или не обновляются. — Включите поддержку WebSocket, чтобы location добавил proxy_http_version 1.1 с заголовками Upgrade и Connection "upgrade", которые нужны nginx для проксирования ws/wss.
- Крупные загрузки возвращают 413 Request Entity Too Large. — Установите client_max_body_size выше вашей самой большой загрузки, например 20M или 100M, и перезагрузите nginx.
Часто задаваемые вопросы
- Как настроить обратный прокси в 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