【发布时间】:2011-05-28 03:14:44
【问题描述】:
在共享主机提供商中发布的 ASP.NET 3.5 网站中,我已将 web.config 文件配置为:
<customErrors mode="On" defaultRedirect="GenericErrorPage.htm">
<error statusCode="403" redirect="AccessDenied.htm"/>
<error statusCode="404" redirect="FileNotFound.htm"/>
</customErrors>
如果用户请求的页面不存在(例如“www.example.com/NotExistPage.aspx”),用户将按照我们的预期被重定向到 FileNotFound.htm 页面。
但如果用户请求一些地址,例如:“www.example.com/NotExistDirectory”,没有.aspx 扩展名,用户将遇到 IIS 7.5 错误页面:
HTTP 错误 404.0 - 未找到 您正在寻找的资源是 已删除、已更改名称或已 暂时不可用。
详细的错误信息:
Module IIS Web Core
Notification MapRequestHandler
Handler StaticFile
Error Code 0x80070002
Requested URL http://www.example.com:80/NotExistDirectory
Physical Path D:\Websites\example\example.com\wwwroot\NotExistDirectory
Logon Method Anonymous
Logon User Anonymous
这是一个不友好的黄页,我们没想到。
我想知道在 webconfig 中设置 customeError 是否不支持这种类型的地址?我怎样才能防止用户看到这个黄页。
编辑: 感谢大卫的回答,但我找到了实际原因和正确的解决方案。请看我的回答。
【问题讨论】:
标签: asp.net web-config iis-7.5 custom-errors