【发布时间】:2014-02-15 17:44:04
【问题描述】:
我在我的网站中使用路由。我想要做的是检测用户何时输入无效的 url 并在 Application_Error (在 Global.asax 中)中捕获错误,然后将用户重定向到主页。
为了测试,我只使用一条路线:
routes.MapPageRoute("myroute","Home/{id}/{age}", "~/Home.aspx",false);
所以如果我去http://testsite/Home/10/25 一切正常。
如果我去http://testsite/Home/10/25/3443/33/22 服务器返回“404 Not Found”错误。问题是 Application_Error 在这里甚至没有触发。
但是如果我去如果我去http://testsite/Home/10/25/3443/33/22.aspx 那么 Application_Error 正在触发
有人知道为什么吗?如何捕获所有错误并将用户重定向到主页?
附:我的 web.config 是:
<customErrors mode="Off" defaultRedirect="Home.aspx">
<error statusCode="404" redirect="Home.aspx" />
</customErrors>
【问题讨论】:
标签: asp.net http-status-code-404