2

我们最近从 IIS 6 .net 2.0 迁移到 IIS 7.5 .net 4.0(ASP.Net Web 窗体)的应用程序遇到问题

代码在 global.asax Application_BeginRequest 事件中执行自定义重写,并使用 HttpContext.Current.RewritePath() 方法进行重写。

当带有扩展名的错误请求(不存在的页面)出现时,例如 /kentest/test.blah 事情得到了正确处理 - IIS 正确传递了我们重定向到的自定义错误页面。

当一个错误的请求没有像 /kentest/test 这样的文件扩展名时,IIS 不会正确传递自定义错误页面。我们陷入循环重写相同的 /kentest/test 一遍又一遍,直到 IIS 抛出递归 500 异常。

任何想法如何解决这个问题并在没有扩展工作的情况下获得请求?

其他人似乎也遇到了这个问题,正如这篇博文提到的,但没有提供解决方案。

更新我们解决了这个问题

我们需要在 handlers 部分的 web.config 中添加以下内容:

<remove name="ExtensionlessUrlHandler-Integrated-4.0" />
4

1 回答 1

2

我们需要在 handlers 部分的 web.config 中添加以下内容:

<remove name="ExtensionlessUrlHandler-Integrated-4.0" />
于 2012-07-25T14:07:00.280 回答