Генератор конфига Nginx — server block и reverse proxy

Выберите, что должен делать Nginx: отдавать статический сайт или SPA, проксировать запросы к приложению на Node/Python или обрабатывать PHP. Затем отметьте дополнительные опции. Вы получите готовый server block с комментариями, который включает HTTPS, редиректы www, gzip, кеширование и заголовки безопасности.

Обновлено
nginx.conf

Сохраните файл как /etc/nginx/sites-available/example.com.conf, создайте на него ссылку в sites-enabled, затем выполните sudo nginx -t && sudo systemctl reload nginx.

Ваши данные никогда не покидают ваш компьютер. Вся обработка выполняется на 100% локально в вашем браузере.

Был ли этот инструмент полезен?0.0 Оценок: 0
Конфиг VirtualHost для ApacheСтатический сайт, WordPress, PHP-FPM или обратный прокси с HTTPS-редиректами, HTTP/2, сжатием, кэшем и заголовками безопасности.Генератор Apache VirtualHost →

Как пользоваться: Генератор конфига Nginx

  1. Выберите сценарий: Статический сайт, SPA (все маршруты направляются на index.html), Reverse proxy к приложению на порту или PHP-FPM.
  2. Укажите домен, корневой каталог или адрес upstream и выберите, как обрабатывать www.
  3. Отметьте дополнительные опции: HTTPS с путями Let’s Encrypt, gzip, кеширование статики, заголовки безопасности, WebSockets, ограничение запросов.
  4. Скопируйте конфиг, проверьте его командой nginx -t и перезагрузите Nginx.

Что добавляет каждая опция

ОпцияДирективы
HTTPSСервер на порту 80, который делает редирект с 301, listen 443 ssl, пути к сертификатам Certbot и location для ACME challenge
SPAtry_files $uri $uri/ /index.html;, чтобы клиентские маршруты не возвращали 404
Reverse proxyproxy_pass и заголовки Host, X-Real-IP, X-Forwarded-For и X-Forwarded-Proto
WebSocketsproxy_http_version 1.1 с заголовками Upgrade / Connection
gzipСжатие текста, JSON, JS, CSS, SVG и шрифтов
Кеширование статикиГод кеширования с Cache-Control: immutable для файлов с хешем в имени и короткий кеш для HTML
Заголовки безопасностиX-Content-Type-Options, Referrer-Policy, X-Frame-Options, Permissions-Policy
Rate limitlimit_req_zone (в контексте http) и limit_req с burst

Получение сертификата

Сначала создайте конфиг с выключенным HTTPS, перезагрузите Nginx и выполните sudo certbot certonly --webroot -w /var/www/letsencrypt -d example.com -d www.example.com или просто sudo certbot --nginx. Затем включите HTTPS, перезагрузите Nginx и проверьте результат с помощью SSL Checker, Redirect Checker и Security Headers Checker.

Частые ошибки

  • Пропущенная точка с запятой: каждая директива заканчивается на ;. nginx -t покажет точную строку с ошибкой.
  • Наследование add_header: add_header внутри location заменяет все заголовки, заданные на уровне server. Генератор повторяет заголовки безопасности там, где это нужно.
  • Завершающий слеш в proxy_pass: proxy_pass http://app/; отбрасывает префикс location, а proxy_pass http://app; сохраняет его.
  • Неверные MIME-типы: шрифты или .webmanifest отдаются как application/octet-stream. Проверить тип можно с помощью MIME Type Lookup.

Работаете в Docker? Используйте вместе с Docker Compose Generator.

Также ищут как: nginx reverse proxy конфиг, nginx конфиг для spa, nginx server block, nginx редирект на https, nginx проксирование websocket, nginx php-fpm конфиг, nginx редирект www.

Инструменты, которые хорошо сочетаются с Генератор конфига Nginx

  • Генератор Apache VirtualHost — Получите готовый конфиг виртуального хоста Apache для вашего домена: статический сайт, WordPress, PHP-FPM или обратный прокси к приложению на Node или Python.
  • Генератор Caddyfile — Caddy получает HTTPS-сертификаты автоматически, вам нужно только описать сайт.
  • Валидатор YAML — Вставьте файл Docker Compose, манифест Kubernetes, workflow GitHub Actions или любой YAML, чтобы найти ошибку, поймать типичные ловушки и получить аккуратно отформатированную версию.
  • Генератор YAML для Kubernetes — Укажите имя приложения, образ и порт, и вы получите готовый к продакшену YAML для Kubernetes: Deployment с пробами, лимитами ресурсов и защищённым security context, а также выбранные вами Service, Ingress с TLS, ConfigMap, Secret и HorizontalPodAutoscaler — всё в одном файле, готовом для kubectl apply.

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

Как проверить конфиг Nginx перед перезагрузкой?
Выполните sudo nginx -t. Команда проверяет синтаксис и пути к файлам и выводит строку с ошибкой. Перезагружайте Nginx (sudo systemctl reload nginx) только тогда, когда будет написано «syntax is ok» и «test is successful».
Как сделать так, чтобы приложение React или Vue работало при обновлении страницы?
Выберите сценарий SPA. Он добавит try_files $uri $uri/ /index.html;, поэтому любой неизвестный путь будет отдавать index.html, а дальше работу возьмёт клиентский роутер.
Где должна стоять директива limit_req_zone?
limit_req_zone должна находиться в контексте http (например, в /etc/nginx/nginx.conf или в начале файла, подключённого оттуда), а не внутри server. Генератор ставит её в начало файла с комментарием; файлы из sites-enabled по умолчанию подключаются в http.
Стоит ли включать HSTS?
Только если HTTPS работает на домене и на всех поддоменах, которые вы указываете. Браузеры запоминают HSTS на время max-age, поэтому при неработающем сертификате сайт станет недоступен. Начните с короткого max-age.
Можно ли установить Генератор конфига Nginx как веб-приложение и пользоваться им офлайн?
Да. Генератор конфига Nginx — это веб-приложение (PWA), которое можно установить из браузера, без скачивания из магазина приложений. В Chrome или Edge (Windows, macOS, Linux, ChromeOS) или на Android нажмите вверху этой страницы «Установить приложение»; на iPhone и iPad используйте «Поделиться → На экран «Домой»», а в Safari 17+ на Mac — «Файл → Добавить в Dock». После этого приложение откроется в отдельном окне со своим значком, и так как оно полностью работает в браузере, оно продолжит работать офлайн. Firefox на компьютере не умеет устанавливать веб-приложения. Как работает установка.

Похожие инструменты

localГенератор Apache VirtualHostПолучите готовый конфиг виртуального хоста Apache для вашего домена: статический сайт, WordPress, PHP-FPM…localГенератор CaddyfileCaddy получает HTTPS-сертификаты автоматически, вам нужно только описать сайт. Выберите обратный прокси (с…localГенератор Docker ComposeОтметьте нужные сервисы — приложение, базу данных, кеш, панель администратора, перехватчик почты — и…apiПроверка SSLПроверьте HTTPS-сертификат за несколько секунд: узнайте, когда он истекает, кто его выпустил, какие имена…apiПроверка редиректовПроследите URL шаг за шагом, чтобы увидеть каждый редирект, его код статуса и время ответа. Проверьте, что…apiПроверка заголовков безопасностиОцените HTTP-заголовки безопасности сайта от A+ до F, узнайте, каких не хватает и почему они важны, и…