Установка и настройка
Тема дорожной карты · Nginx
Первоначальная установка и настройка Nginx предполагает выбор между версией из пакетного менеджера ОС (apt install nginx на Debian/Ubuntu или yum install nginx на RHEL/CentOS) и пакетом из официального репозитория Nginx, предоставляющим более свежий стабильный или основной (mainline) выпуск с поддержкой дополнительных динамических модулей. После установки основной конфигурационный файл располагается в /etc/nginx/nginx.conf; рекомендуемый подход — размещать конфигурации виртуальных хостов в /etc/nginx/conf.d/ или /etc/nginx/sites-available/ и добавлять символические ссылки на включённые сайты в /etc/nginx/sites-enabled/. Каждое изменение конфигурации следует проверять командой nginx -t перед применением, а перезагрузка в реальном времени выполняется через nginx -s reload, которая плавно передаёт существующие соединения новым воркерам без разрыва трафика на работающем веб-сервере или обратном прокси. Начальная конфигурация Nginx обычно включает установку worker_processes auto;, настройку блока сервера по умолчанию с SSL/TLS через Certbot, включение gzip-сжатия и журналирования доступа. Понимание полного жизненного цикла установки и настройки Nginx — от выбора пакета до управления службой через systemctl — является отправной точкой для всех последующих задач оптимизации производительности и балансировки нагрузки.
Как это работает
Установка и настройка через distro-пакеты (apt install nginx / dnf install nginx) — но дистрибутивная версия отстаёт. Для свежего stable — официальный nginx-репозиторий. Главный конфиг: /etc/nginx/nginx.conf; per-site — в /etc/nginx/conf.d/*.conf или /etc/nginx/sites-available/ (Debian-стиль с симлинками в sites-enabled). Конфиг иерархический: events { }, http { server { location { } } }. Reload через nginx -s reload (zero-downtime). Тест до reload: nginx -t.
Когда применять
Официальный nginx.org-репо для production — distro-пакеты на месяцы позади. Всегда nginx -t до reload — синтаксическая ошибка = сервер down при рестарте (reload безопаснее). Server-level директивы — в /etc/nginx/conf.d/*.conf; nginx.conf минимальный. worker_processes auto и worker_connections 4096+ для современного железа.
Типичные ошибки
Ловушки Установка и настройка: правка конфига без nginx -t сначала (битый конфиг + reload = downtime); оставлен server_tokens on (версия nginx утекает в Server:-заголовок); не удалена дефолтная страница welcome to nginx (info leak); ручное управление TLS-сертами вместо certbot/acme.sh (ручное = забытые ренью). nginx -V — для просмотра compiled-in модулей.