全局 asax 中的应用程序错误事件未因无扩展 404 错误而触发
Posted
技术标签:
【中文标题】全局 asax 中的应用程序错误事件未因无扩展 404 错误而触发【英文标题】:Application Error event in Global asax not firing on extension-less 404 errors 【发布时间】:2012-05-02 11:24:35 【问题描述】:我目前正在运行带有 IIS 6 的 asp.net webforms .net 3.5。
我尝试为所有类型的错误创建自定义错误页面,并根据错误类型和状态代码(如果存在)自定义处理程序。
现在,在 cassini 上本地一切运行良好。但是,当我将它部署到运行 IIS6 的开发框时,404 错误 do not hit global.asax 中的 application_error 事件。相反,它通过了我对错误处理的尝试,并直接进入 IIS 为 404 定义的自定义错误页面。
我目前使用通配符设置 IIS6,以通过 .NET dll 传递所有内容,就像设置 cassini 一样。
我非常困惑为什么这不会像在本地那样在 dev 上发生。任何人都可以插话并提供帮助吗?提前致谢。
附言
这是我的网络配置。我没有使用内置的错误处理,只是打开/关闭我的处理,并捕获我的错误处理中出现的任何错误:
<customErrors mode="On" defaultRedirect="~/error.htm" />
【问题讨论】:
【参考方案1】:将 IIS 中的 404 处理程序设置为指向一个 不存在的 aspx 文件。这将触发所有 404 的 Application_Error。
【讨论】:
感谢您的回复。有空我会尽快查看。 @letsgetsilly - 你有空闲时间来确认这个答案吗?以上是关于全局 asax 中的应用程序错误事件未因无扩展 404 错误而触发的主要内容,如果未能解决你的问题,请参考以下文章