Win2008R2 ASP.NET 3.5自定义错误。。。似乎没法让它工作

Win2008R2 ASP.NET 3.5自定义错误。。。似乎没法让它工作,asp.net,windows-server-2008-r2,custom-errors,Asp.net,Windows Server 2008 R2,Custom Errors,救命啊 我有一个自定义的HttpModule来处理Application.Error事件。模块正在工作。。。它将消息记录到事件日志中,我可以看到这些消息。。。在写入自定义响应并调用response.flush之后,一直到模块的末尾。大致来说,该模块的目的是记录错误,并向用户显示礼貌的错误消息,以便该消息可能/可能不包含有关错误的有用详细信息 在应用程序的web.config中,我已配置和。在applicationHost.config中,我已经配置了。在applicationHost.confi

救命啊

我有一个自定义的HttpModule来处理Application.Error事件。模块正在工作。。。它将消息记录到事件日志中,我可以看到这些消息。。。在写入自定义响应并调用response.flush之后,一直到模块的末尾。大致来说,该模块的目的是记录错误,并向用户显示礼貌的错误消息,以便该消息可能/可能不包含有关错误的有用详细信息

在应用程序的web.config中,我已配置和。在applicationHost.config中,我已经配置了。在applicationHost.config中,我还配置了一个元素

但对于本地请求和远程请求,死亡的黄色屏幕仍在显示

这似乎是Win2008R2的问题。。。这一切都可以在win2008中运行。我刚刚加载了我的测试环境并尝试了这个。我怀疑它与x64和x86有关。。。但Win2008R2仅为x64。。。我的Win2008测试环境是x86

我对此做了更多的探讨。在2008年的Win2008中,这一点毫无意义。不显示自定义错误消息。使用它可以显示自定义错误消息。在Win2008R2上,无论httpErrors/ErrorMode=Detailed如何,我都会看到相同的问题黄色屏幕

所以。。。也许我真正的疑问是为什么IIS7.5上的设置不起作用。如果我把它设置为On,我得到的是短ysod,设置为Off,我得到的是长ysod,而不是来自http处理程序的自定义消息,就像IIS7和IIS6中发生的那样,设置为RemoteOnly,我得到的是短ysod

半解决:应用程序池设置为托管管道模式:集成。将此模式切换到经典模式可显示自定义错误详细信息。这并不能解释为什么IIS7 win2008 x86与集成管道一起工作,IIS7.5 win2008r2 x64需要经典管道。有什么想法吗

非常感谢您的帮助

编辑:修复xml标记并添加更多信息和半解析的

仅适用于asp.net文件扩展名,也适用于其他所有配置: