Справочник системных ошибок и решений

Windows Server, Active Directory, 1С:Предприятие, СУБД, Linux, Cisco, MikroTik, Asterisk.

⚠️ Важная информация Все материалы, инструкции, команды и скрипты на сайте предоставлены исключительно в ознакомительных целях. Их применение может повлиять на работу операционной системы, программного обеспечения, баз данных, сетевого оборудования и других компонентов инфраструктуры. Перед выполнением действий создайте резервную копию и по возможности протестируйте изменения в безопасной среде. Пользователь самостоятельно оценивает риски и несет ответственность за результат. При отсутствии необходимых знаний обратитесь к квалифицированному ИТ-специалисту.

HTTP 502.3 Windows Server, AD и Роли

Сбои маршрутизации ARR (Application Request Routing): решение HTTP 502.3

Обновлено: 28.08.2026 · Официальная документация ↗

Симптомы сбоев маршрутизации в ARR

При использовании модуля Application Request Routing (ARR) в качестве обратного прокси клиенты получают ошибки HTTP Error 502.3 - Bad Gateway: A connection with the server could not be established или HTTP Error 504 - Gateway Timeout. Серверная ферма (Server Farm) помечает целевые бэкенд-ноды как Unhealthy.

СимптомПричина
HTTP 502.3 (WinHttp error 12002/12029)ARR не может установить TCP-соединение с бэкендом или превышен таймаут
Ферма помечает сервер как UnhealthyHealth Check проваливает проверку URL из-за неверного статус-кода ответа
Заголовки X-Forwarded-For не передаютсяНе настроена перезапись заголовков в правилах URL Rewrite

Пошаговое восстановление маршрутизации ARR

  1. Увеличьте таймаут ответа прокси (Time-out) в настройках ARR:
    & "$env:SystemRoot\System32\inetsrv\appcmd.exe" set config -section:system.webServer/proxy /timeout:"00:02:00" /commit:apphost
  2. Проверьте доступность бэкенд-серверов по порту:
    Test-NetConnection -ComputerName 10.0.0.15 -Port 80; Test-NetConnection -ComputerName 10.0.0.16 -Port 80
  3. Включите сохранение и передачу оригинального заголовка Host:
    & "$env:SystemRoot\System32\inetsrv\appcmd.exe" set config -section:webFarms /[name='ИмяФермы'].applicationRequestRouting.protocol.preserveHostHeader:true /commit:apphost
  4. Проверьте статус Health Check: в IIS Manager перейдите в Server Farms > ВашаФерма > Health Check и настройте корректный URL для проверки (например, /healthz) с кодом ответа 200-399.

Внимание: Убедитесь, что в глобальных настройках прокси (IIS Server > Application Request Routing > Server Proxy Settings) установлен флажок «Enable proxy».

💡 Практика специалистов: Если бэкенд-сервер возвращает объемные ответы, отключите функцию Response Buffering в ARR (Server Proxy Settings -> Buffer response = False). Это предотвратит таймауты 502.3 и разгрузит RAM.

Частые вопросы (FAQ)

Что означает ошибка 12029 в трассировке ARR?

Код ERROR_WINHTTP_CANNOT_CONNECT указывает, что бэкенд-сервер отклонил соединение, целевая служба остановлена или заблокирована фаерволом.

Как настроить Sticky Sessions в ARR?

В свойствах Server Farm перейдите в раздел 'Server Affinity', включите 'Client affinity' и задайте имя cookie-файла.

Почему ARR возвращает 502.3 при передаче больших файлов?

Срабатывает лимит времени ответа прокси или лимит максимального размера запроса maxAllowedContentLength.

Как сбросить статус Unhealthy для серверов фермы вручную?

В меню мониторинга фермы в IIS Manager нажмите 'Reset runtime statistics'.

Полезные материалы
Рекомендуем