Ответ 1
Перейдите к настройкам прокси-сервера ARR (они скрыты в IIS → Ключ маршрутизации запросов приложений → Параметры прокси сервера) и снимите флажок "Обратный переписывать хост в заголовках ответов". Этого должно быть достаточно.
У нас есть сервер A, и в некоторых случаях мы переписываем запросы нашему партнеру на сервере B.
В некоторых случаях сервер B будет отвечать перенаправлением на совершенно другой веб-сайт, что и ожидается, пусть говорят сервер C. Однако, когда сервер брандмауэра переадресации возвращается на сервер A, сервер A интерпретирует его как перенаправлять на место на себе (A), а не как перенаправление на другой сайт - сервер C.
Как я могу обратить внимание на перенаправление на внешний веб-сайт и на самом деле туда, вместо того, чтобы предполагать, что перенаправление на моем сервере (и 404)? Мы запускаем IIS 7 с модулем перезаписи.
Любая помощь очень ценится.
Перейдите к настройкам прокси-сервера ARR (они скрыты в IIS → Ключ маршрутизации запросов приложений → Параметры прокси сервера) и снимите флажок "Обратный переписывать хост в заголовках ответов". Этого должно быть достаточно.
Если вы не можете изменить это в графическом интерфейсе, вы можете установить конфигурацию через командную строку.
Что-то вроде этого должно работать:
appcmd.exe set config -section:system.webServer/proxy /reverseRewriteHostInResponseHeaders:"False" -commit:apphost
Флажок "Reverse rewite host in response headers" был для меня в другом месте. Я использую Windows Server 2012 R2.
Это было в разделе Подключения → Серверные фермы → - > Прокси, чуть ниже тайм-аута.
В моем случае проверка этого разрешила мои проблемы.