Как правильно настроить HTTP-заголовок с помощью управляемого модуля IIS
Я написал собственный управляемый HTTP-модуль IIS в С#. Цель состоит в том, чтобы просто установить заголовки запросов X-Forwarded-For и X-Forwarded-Proto в каком-либо состоянии (которые не могут быть обработаны правилами маршрутизации). Модуль должен быть развернут в нашем балансировщике нагрузки (это не что иное, как IIS с установленными ARR и настроенными фермами серверов). По некоторым причинам заголовки устанавливаются, но не передаются на веб-серверы за балансировщиком нагрузки. Я знаю это, потому что я проверил журналы вывода Failed Request Tracing.
И вот скриншот всех модулей IIS, установленных на нашем балансировщике:
Как вы можете видеть, мой управляемый модуль под названием "QA.XForwardedHeadersModule" загружается перед собственным модулем ApplicationRequestRouting (ARR). Но заголовки не передаются в любом случае. Я даже проследил свои просьбы с Wireshark. Х-Переадресованных заголовков вообще нет.
Означает ли это, что управляемые модули не полностью совместимы с собственными модулями, а собственные модули (например, ARR) не могут видеть заголовки запросов, заданные с управляемыми модулями (например, мой пользовательский письменный модуль)? Существует ли какое-либо возможное решение этой проблемы?