正如标题所述 - 如何禁用事件日志中出现的所有 ASP.NET 未处理错误?在 IIS / web.config 中看不到任何明显的东西...
答案1
我现在能想到的最简单的方法是通过基于代码的解决方案,而不是 web.config。在应用程序的 global.asax 文件中,您可以添加 Application_Error 事件处理程序。在这里,您可以做任何您想做的事情来记录错误(或不记录......),然后重定向到适当的错误页面。Context.ClearError()
在重定向之前调用,并且不会启动任何标准的 ASP.Net 未处理的异常内容。不过,这不是处理这个问题的好方法,所以希望其他人有更好的答案。
仅执行此功能的简单 global.asax 如下所示:
<%@ Application Language="C#" %>
<%@ Import namespace="System.Diagnostics" %>
<script runat="server">
protected void Application_Error(object src, EventArgs e)
{
Exception ex = Server.GetLastError();
// do whatever you want to the error itself (ex.Message, etc.)
// ####
// clear out the ASP.Net error
Context.ClearError();
// redirect to an error page
Response.Redirect("errorpage.aspx");
}
</script>
综上所述,必须有一种方法可以使用 web.config healthMonitoring 部分来做到这一点,我只是想不明白如何说“关闭所有事件的日志记录”。