0

我有一个 MVC3 (C#) 应用程序引发了一个神秘错误(显示自定义错误页面),我在我的日志文件(我使用 NLog 进行日志记录)和 IIS 日志中都没有找到任何有关它的信息。

事实上它没有出现在我的日志文件中,我得出的结论是 Application_Error() 没有触发,因为否则它应该被记录下来。一旦发生此错误,它不会消失,直到我重新启动应用程序池。

注意:这与当 customError 为 On 时 Application_Error() 不触发无关。即使我将 customError 设置为 On。因为当我故意输入错误的 URL 时,我会得到自定义错误页面,并且我也可以在日志中看到它。

有人遇到过类似的问题吗?或者有人知道我应该研究什么吗?谢谢你。

4

1 回答 1

0

为了捕获给定域上的任何 URL,您需要所谓的包罗万象的路由,如下所示:

// this route is intended to catch 404 Not Found errors instead of bubbling them all the way up to IIS.
routes.MapRoute("PageNotFound", "{*catchall}", notFound);

最后注册该路线。

关于问题的“接管 IIS 劫持”方面,您可能需要研究system.webServer httpErrors

于 2012-09-03T03:01:59.880 回答