c# - 关闭 HttpRequestValidationException 日志记录?

标签 c# asp.net asp.net-mvc-3

我们的服务器的事件查看器日志中不断出现一个异常,这是由于我们的 PCI 安全公司明确试图入侵我们的网站造成的。随着它一直出现,它变得很烦人,最初它生成“死亡蓝屏”并作为未处理的异常登录到事件查看器中。我们在异常来自的代码周围放置了一个异常处理程序(如果您有兴趣,可以在 Phalanger 中),因此它现在不再崩溃并导致死机蓝屏,但它仍然以警告的形式出现在事件查看器日志中!

知道如何在事件查看器中关闭它,而不是完全关闭请求验证,这是我试图避免的吗?

我们使用的是 ASP.NET MVC 3,所以我知道我可以使用新的 ValidateInput 属性来执行此操作,但我宁愿将其保持打开状态,但能够自己处理异常,而不是将它们记录到事件中即使我捕获它并处理它,查看器?

最佳答案

将以下代码添加到 Global.asax.cs

    void Application_Error(object sender, EventArgs e)
    {
        Exception ex = Server.GetLastError();
        if (ex is HttpRequestValidationException)
        {
            Server.ClearError();
            Response.Clear();
            Response.StatusCode = 200;

            // add content below
            Response.Write("");
            Response.End();
        }
    }

关于c# - 关闭 HttpRequestValidationException 日志记录?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13203032/

相关文章:

c# - 如何检测现在是否有视频正在播放?

c# - 如何创建自定义非矩形 GroupBox?

c# - 检查类型是否为 Nullable 的正确方法

c# - 将 C# Func<> 移植到 Java- Math Equation

c# - DLL "vsperf140.dll": the specified module could not be found

c# - 不支持每种类型的多个对象集?

asp.net - 重定向后记住 QueryString 参数的 IdentityServer 客户端示例

asp.net-mvc-3 - 在何处以及如何为我的 asp.net MVC 3 Web 应用程序定义 <customErrors mode=”on”>

c# - 使用 LINQ 从 ID 引用的表中获取记录名称

asp.net-mvc-3 - 将以 ".cshtml"结尾的请求路由到 Controller