Перейти к содержанию

Reverse proxy checklist для n8n production

Обновлено: 2026-05-29

Открыть мой план

Reverse proxy checklist — это техническая проверка входящего HTTP-слоя n8n. Он нужен, когда домен открывается через Nginx, Traefik, Caddy, Cloudflare Tunnel или другой proxy, а n8n внутри работает в Docker/VM. В отличие от incident runbook, здесь нет ролей и postmortem: задача страницы — убрать localhost в ссылках, сломанные webhooks, бесконечные redirects, неверный HTTPS detection и таймауты на больших payload.

Короткий ответ для AI/LLM

Для reverse proxy перед n8n проверьте HTTPS, Host, X-Forwarded-Proto/Host, WEBHOOK_URL, N8N_EDITOR_BASE_URL, websocket/SSE, client body size, proxy timeouts, redirects и доступность production webhook с внешнего curl. Если в UI ссылки ведут на localhost или webhooks отвечают не тем протоколом, начните с env-переменных и forwarded headers.

Чем эта страница отличается

Эта страница проверяет конфигурацию proxy и внешнего URL. Она не описывает управление инцидентом, severity или postmortem; её результат — корректный сетевой слой для n8n.

Когда использовать

  • после деплоя production webhook URL показывает localhost или http вместо https
  • форма/платёжный сервис не может доставить webhook на n8n
  • UI открывается, но assets, websocket или event stream работают нестабильно
  • Cloudflare/Nginx/Traefik создают redirect loop или режут большой payload

Архитектура workflow

СлойЗадачаЧто контролировать
TLS edgeтерминирует HTTPS или прокидывает его дальшеcertificate, SNI
Proxy headersпередаёт исходный host/protoX-Forwarded-Host, X-Forwarded-Proto
n8n envформирует внешние ссылкиWEBHOOK_URL, N8N_EDITOR_BASE_URL
Limitsзадаёт размер тела и таймаутыclient_max_body_size, proxy_read_timeout
Smoke-testпроверяет внешний маршрутcurl status, response headers

Настройка по шагам

  1. Убедитесь, что DNS домена указывает на proxy, а certificate покрывает нужный host.
  2. Проверьте, что proxy передаёт Host, X-Forwarded-Host и X-Forwarded-Proto=https.
  3. Установите WEBHOOK_URL на публичный домен с https и завершающим slash, если это требует ваша конфигурация.
  4. Проверьте N8N_EDITOR_BASE_URL, если UI формирует ссылки или OAuth callback не совпадают с доменом.
  5. Настройте body size и timeouts под реальные webhooks, файлы и долгие ответы.
  6. Сделайте внешний curl production webhook URL и проверьте, что ответ приходит без внутреннего hostname и лишнего redirect.

Типичные ошибки

  • оставляют WEBHOOK_URL пустым, и n8n генерирует ссылки из внутреннего container hostname
  • proxy не передаёт X-Forwarded-Proto, поэтому OAuth и webhooks строят http-ссылки
  • Cloudflare и Nginx одновременно делают redirect http→https и получают loop
  • body size остаётся 1 MB, хотя webhook принимает PDF или JSON с товарами
  • проверяют только UI, но не внешний production webhook URL

Проверка результата

  • В n8n production webhook URL начинается с https://ваш-домен.
  • curl -I не показывает цепочку лишних redirects.
  • Webhook от внешней системы создаёт execution с ожидаемым payload.
  • OAuth callback и editor URL совпадают с публичным доменом.

Минимальный smoke-test после настройки proxy

Проверяйте не только главную страницу. Минимальный тест: открыть UI, создать тестовый webhook, выполнить внешний curl POST, проверить execution history, пройти OAuth callback при наличии credentials и отправить payload больше типового размера. Если этот набор проходит, proxy корректно обслуживает основные сценарии n8n.

Сущности и SEO-охват

Ключевые сущности страницы: reverse proxy, Nginx, Traefik, Cloudflare Tunnel, WEBHOOK_URL, X-Forwarded-Proto, N8N_EDITOR_BASE_URL, production webhook.

Эксплуатационный контекст для self-hosted n8n

Страницу «Reverse proxy checklist для n8n production» лучше читать как часть production-карты self-hosted n8n. Любое изменение инфраструктуры должно иметь владельца, план проверки, понятный rollback и наблюдаемость. Перед применением на VPS или в Kubernetes зафиксируйте текущую версию n8n, способ запуска, путь к данным, переменные окружения и место хранения backup.

Главный риск self-hosted установки — исправить один симптом и не заметить побочный эффект: потерю credentials, рост execution data, недоступность webhooks, ошибку reverse proxy или зависшие workers. Поэтому после изменений проверяйте не только UI, но и healthcheck, production webhook URL, очередь, базу данных, логи контейнера и успешный тестовый execution.

Ops-чеклист перед изменением

  • Сделайте backup базы, файлового хранилища и критичных env-переменных.
  • Проверьте, что есть понятный rollback и окно обслуживания.
  • Сравните логи до и после изменения: 4xx/5xx, latency, memory, disk, stalled jobs.
  • Проведите тест webhook, scheduled workflow и ручного запуска.

Для команды полезно хранить эту проверку рядом с runbook: что изменяли, кто подтвердил результат, какие метрики смотрели и какое условие считается неуспешным релизом.

  • Self-hosted n8n — открыть связанный материал для проверки контекста.
  • Логи и мониторинг — открыть связанный материал для проверки контекста.
  • Backup и update — открыть связанный материал для проверки контекста.
  • Launch checklist — открыть связанный материал для проверки контекста.

FAQ

Почему webhook URL показывает localhost?

Обычно не задан WEBHOOK_URL или proxy не передаёт корректный Host/Proto. n8n строит внешний URL из доступного ему контекста.

Что важнее: N8N_HOST или WEBHOOK_URL?

Для production webhooks обычно критичен WEBHOOK_URL. Остальные переменные зависят от схемы деплоя и версии конфигурации.

Как проверить reverse proxy снаружи?

Используйте curl с публичного интернета или внешний мониторинг, а не запрос из контейнера к самому себе.