Установка и настройка Nginx на VPS как обратного прокси: термины и чек-лист

Подробности, цифры, термины и чек-лист по теме «Установка и настройка Nginx на VPS как обратного прокси». Страница справочника целиком: Установка Nginx на VPS.

Коротко о теме

Установка Nginx на Ubuntu и Debian: конфиг обратного прокси для контейнера, HTTPS через Certbot, upstream для двух копий и разбор 502, 504, 413.

Подробности по разделам

Конфиг Nginx для контейнера на localhost: proxy_pass и заголовки

Перечитать конфиг: docker compose exec nginx nginx -s reload.

HTTPS для Nginx: сертификат от Certbot одной командой

Если не хочется держать отдельную программу для сертификатов, посмотрите Caddy: там HTTPS включён в сам веб-сервер.

Ошибки Nginx за прокси: 502, 504, 413 и неверный Host

Откройте /var/log/nginx/error.log, найдите последнюю ошибку и выберите похожую строку

Балансировщик нагрузки Nginx: upstream на два контейнера

В открытой версии Nginx проверка идёт по ходу работы: сервер выпадает из пула после ошибок. Активные проверки состояния входят в коммерческий Nginx Plus. Для проверок раз в секунду, TCP-пулов и страницы статистики лучше подходит HAProxy.

Ключевые цифры

Термины на странице

Nginx
Nginx это веб-сервер и обратный прокси. Его часто ставят перед приложением, чтобы раздавать статику и держать HTTPS.
Certbot
Certbot это программа, которая получает и продлевает сертификаты Let's Encrypt на сервере.
Debian
Debian это дистрибутив Linux, на котором основана Ubuntu. Его ценят за стабильность.
Файрвол
Файрвол ограничивает, с каких адресов и на какие порты можно подключиться к серверу.
Let's Encrypt
Let's Encrypt выпускает бесплатные DV-сертификаты на 90 дней с автоматическим продлением.
PHP
PHP это язык, на котором работают WordPress, Битрикс и другие CMS. Версия PHP влияет на скорость и совместимость сайта.
Продление домена
Продление это оплата домена на следующий срок. Цена продления часто выше цены регистрации.

Что проверить

  1. Выберите конфигурацию по памяти и диску под задачу, процессор обычно вторичен.
  2. Проверьте тип виртуализации: KVM даёт свою систему и гарантированные ресурсы.
  3. Уточните, входит ли IPv4 и сколько стоит трафик сверх пакета.
  4. Храните данные контейнеров в томах.
  5. Закрепляйте версии образов, а не latest.
  6. Ограничьте ресурсы контейнеров, чтобы один не съел весь сервер.

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