Osp*_*rey 12 asp.net iis error-handling redirect
我使用下面的web.config代码将请求重定向到缺少页面到404错误处理页面:
<customErrors mode="On" defaultRedirect="404.aspx" redirectMode="ResponseRewrite">
<error statusCode="404" redirect="404.aspx"/>
</customErrors>
Run Code Online (Sandbox Code Playgroud)
当我查找诸如"missing.aspx"之类的页面时它工作正常,但它不适用于没有".aspx"扩展名的页面,例如"missing.asp"或只是"缺失".如果它不起作用,它只会加载标准的IIS 7.5错误页面.
我究竟做错了什么?我正在使用.net 4.我注意到其他人提出同样的问题,但他们没有得到答案.
谢谢!
正如dbaseman所说,这是因为没有为nonasp.net文件调用asp.net处理程序.强制asp.net处理程序对所有请求进行操作的简单方法是在web.config中设置以下内容.
<system.webServer>
<modules runAllManagedModulesForAllRequests="true">
</system.webServer>
Run Code Online (Sandbox Code Playgroud)
这告诉IIS为所有请求运行所有托管模块,例如.html,.jpg,.css,.js等.这通常不赞成,因为它只是引入了额外的处理和延迟.
尝试的另一种选择(比上面更干净)在这里作为答案发布:https://stackoverflow.com/a/6661699/701062
| 归档时间: |
|
| 查看次数: |
15310 次 |
| 最近记录: |