当设置了 RAMMFAR 时,为什么 IIS 7 会在 Web 窗体回发中剥离请求参数并重写 URL (Helicon)?

Why does IIS 7 strip request parameters on Web Forms postback with rewritten urls (Helicon) when RAMMFAR is set?

在为 ASP.NET 网络应用程序设置 runAllManagedModulesForAllRequests 后,所有使用 Helicon URL 重写 URL 的 WebForms 不再通过回传调用接收它们的参数。

看起来这些参数在 Application_AuthenticateRequest Global.asax 处理程序中仍然可用,但在 URL 重写发生后它们就消失了。

关于如何在不撤消 runAllManagedModulesForAllRequests 设置的情况下解决此问题的任何提示?

显然,Helicon 模块需要配置为在 "Early Request Processing" 模式下处理 URL 重写,以使用 runAllManagedModulesForAllRequests 设置。

这可以通过在 Helicon 的 httpd.conf 配置文件开头设置 NotificationType=PREPROC_HEADERS 标志来完成。

阅读更多:helicon docs, sitecoregadgets blogpost