我正在使用家庭编写的url-rewrite httpmodule处理遗留的cms。该网站已在IIS6上运行多年,现在是时候升级到IIS7了。
httpmodule连接到Application_BeginRequest,并且它具有魔力。 我们不在IIS中使用通配符路由,但我们已经设置了一个名为main.aspx的默认文档。 main.aspx确实存在使IIS将请求路由到isapi.dll,从而触发我们的httpmodule。这适用于iis6和iis7(经典模式)。
我们遇到了一个问题。我们看到的行为差异:
example.com/?tracking=1234
= HttpContext.Current.Request.RawUrl
/main.aspx?tracker=1234
收益率
example.com/?tracking=1234
= HttpContext.Current.Request.RawUrl
/?tracker=1234
收益率
在IIS7中运行站点时缺少默认文档。
IIS提供的网址中缺少此默认文档会给我们带来问题。有谁知道为什么这种行为发生了变化?