Looking for cloud-based phone profiles? Check out our technical analysis of GeeLark. Discover GeeLark

Настройка Nginx онлайн: генератор конфига nginx.conf

5 (оценок: 1)

Инструмент основан на открытом проекте nginxconfig.io от DigitalOcean, который распространяется по лицензии MIT (текст лицензии). Реклама и меню оригинального сайта убраны. Конфиг создаётся в вашем браузере, ничего не отправляется на сервер.

Настройка Nginx онлайн: генератор nginx.conf

Выберите, что нужно вашему сайту, и генератор напишет файлы конфигурации NGINX: блоки server для доменов, HTTPS с рекомендуемым профилем TLS, обратный прокси, PHP-FPM, Node.js или Python, кеширование, сжатие и заголовки безопасности. Результат можно скачать архивом или получить в виде одной команды для терминала вашего сервера. Все вычисления идут в браузере, поэтому имена доменов и пути никуда не отправляются.

Как пользоваться генератором

  1. Выберите пресет для типа сайта (PHP, WordPress, Node.js, Django, одностраничное приложение, Drupal, Magento, Joomla или простой фронтенд), введите домен и путь к сайту на сервере.
  2. Откройте вкладки сайта: Сервер, HTTPS, PHP, Python, Обратный прокси, Маршрутизация, Логирование и Ограничить. Число в скобках после домена показывает, сколько настроек вы изменили.
  3. Задайте глобальные параметры для всех сайтов: профиль SSL, заголовки безопасности, производительность (gzip, кеширование), логирование и основные настройки NGINX. Вкладка Docker даёт файлы для контейнера.
  4. В разделе «Настройка» скачайте архив или скопируйте команду Base64 и выполните шаги под ней.
  5. Проверьте результат командой nginx -t и перечитайте конфиг NGINX (см. ниже).

Где лежат конфиги nginx

  • Debian и Ubuntu: главный файл — /etc/nginx/nginx.conf. Сайты лежат в /etc/nginx/sites-available/ и включаются ссылкой в /etc/nginx/sites-enabled/; дополнительные файлы — в /etc/nginx/conf.d/.
  • CentOS, RHEL и пакеты с nginx.org: /etc/nginx/nginx.conf и файлы /etc/nginx/conf.d/*.conf (папки sites-available нет).
  • Docker: официальный образ читает /etc/nginx/conf.d/default.conf; свой файл или папку подключают как том.
  • Windows: папка conf рядом с nginx.exe, главный файл — conf\nginx.conf.
  • Чтобы увидеть всю конфигурацию, которую NGINX действительно использует, со всеми подключёнными файлами, выполните sudo nginx -T.

Как проверить конфиг и перечитать его

Никогда не перезагружайте NGINX без проверки. Выполните sudo nginx -t: ответ syntax is ok и test is successful означает, что файлы корректны. Ошибка вроде unknown directive или unexpected "}" называет файл и строку, поэтому ошибку легко найти. Затем примените новую конфигурацию, не обрывая открытые соединения: sudo systemctl reload nginx или sudo nginx -s reload. В Windows выполните nginx -s reload в папке NGINX. Перезапуск нужен, только если перечитывания не хватает.

Настройка PHP и NGINX (php-fpm)

NGINX сам не выполняет PHP, он передаёт запрос в PHP-FPM директивой fastcgi_pass: в сокет вроде /run/php/php8.3-fpm.sock или на 127.0.0.1:9000. Имя сокета зависит от версии PHP, посмотрите его в папке /run/php/. Пресет PHP настраивает это вместе с try_files, чтобы запросы CMS шли на index.php.

Настройка обратного прокси, WebSockets и SSE

Обратный прокси принимает запросы на портах 80 и 443 и передаёт их приложению директивой proxy_pass, например http://127.0.0.1:3000. Генератор добавляет заголовки Host, X-Real-IP, X-Forwarded-For и X-Forwarded-Proto, чтобы приложение знало настоящий адрес и протокол посетителя. Для WebSockets NGINX нужны proxy_http_version 1.1 и заголовки Upgrade и Connection. Для server-sent events (SSE) отключите буферизацию директивой proxy_buffering off. Nginx Proxy Manager — другой продукт: приложение в Docker со своим веб-интерфейсом. Этот инструмент пишет обычный конфиг, который вы храните в файлах.

Настройка HTTPS и сертификата nginx

Бесплатный сертификат выдаёт Let's Encrypt, например через certbot; файлы fullchain.pem и privkey.pem лежат в /etc/letsencrypt/live/ваш-домен/. Генератор прописывает пути, редирект с http на https и настройки TLS профиля Mozilla: Modern, Intermediate (по умолчанию) или Old для старых клиентов. HSTS включайте только после того, как убедились, что https работает на всех поддоменах: иначе браузеры откажутся открывать сайт по http.

Как NGINX выбирает location

Первым выигрывает точное совпадение location = /path. Затем находится самый длинный префикс, и если у него есть модификатор ^~, поиск останавливается. Иначе по порядку в файле проверяются регулярные выражения (~ и ~*), и используется первое совпавшее. Если ни одно регулярное выражение не подошло, берётся самый длинный префикс.

Nginx вместе с Apache и настройка fail2ban

Частая схема: NGINX слушает 80 и 443, отдаёт статику и передаёт динамические запросы Apache на другом порту, например на 127.0.0.1:8080. Чтобы блокировать ботов, которые подбирают пароли и сканируют сайт, у fail2ban есть готовые фильтры для NGINX: nginx-http-auth, nginx-botsearch и nginx-limit-req. Включите их в jail.local и проверьте, что пути к логам там совпадают с теми, что в сгенерированном конфиге.

Ограничения сгенерированного конфига

Результат — хорошая основа, но не гарантия для каждого сервера. Проверьте его командой nginx -t, сохраните резервную копию старых файлов (команда есть в инструкции генератора), а для приложений вроде 1С-Битрикс, Nextcloud или Zabbix сверяйтесь с конфигом из их документации. Доступные директивы зависят от версии NGINX и модулей вашей сборки.

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

Чтобы измерить, как быстро отвечает сервер, воспользуйтесь проверкой TTFB, чтобы увидеть коды ответа и редиректы после настройки https — проверкой кодов состояния HTTP, а чтобы проверить DNS-записи и сертификат домена — DNS-запросом.

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

Проверка TTFB: время до первого байта онлайн

Бесплатная проверка TTFB: время до первого байта любого сайта с этапами DNS, подключения, TLS и ожидания сервера, от 1 до 5 замеров и медиана.

293
Проверка кодов состояния HTTP и редиректов

Проверьте код ответа HTTP и заголовки любого URL и пройдите всю цепочку редиректов (301, 302, 307, 308) по шагам, с IP сервера и временем.

42
DNS Lookup: проверка DNS-записей и SSL-сертификата

DNS lookup онлайн: A, AAAA, CNAME, MX, NS, TXT, SOA и CAA записи любого домена и его SSL-сертификат. Узнайте, почему не срабатывает DNS lookup.

350
Проверка хостинга сайта: кто хостит сайт, IP и хостер

Узнайте, где размещён сайт: IP-адрес, хостинг-компания (ASN), страна и город сервера. Бесплатная проверка хостинга для любого домена.

440

Популярные инструменты