Logging Elmah报告不必要的404错误
我正在使用Elmah登录ASP.NET MVC项目,我收到了路径/prx2.php的大量404错误,而路径/prx2.php又将哈希作为查询字符串参数传递 我想这是一个试图找到漏洞的扫描器。因为我没有运行PHP,所以我是安全的!但是,我想阻止ELmah报告此错误 在不实际创建/prx2.php页面的情况下,从报告中排除这些类型错误的最佳方法是什么。我还希望在配置文件中执行此操作,而不是以编程方式执行Logging Elmah报告不必要的404错误,logging,http-status-code-404,elmah,Logging,Http Status Code 404,Elmah,我正在使用Elmah登录ASP.NET MVC项目,我收到了路径/prx2.php的大量404错误,而路径/prx2.php又将哈希作为查询字符串参数传递 我想这是一个试图找到漏洞的扫描器。因为我没有运行PHP,所以我是安全的!但是,我想阻止ELmah报告此错误 在不实际创建/prx2.php页面的情况下,从报告中排除这些类型错误的最佳方法是什么。我还希望在配置文件中执行此操作,而不是以编程方式执行 有什么想法吗?Elmah支持错误过滤- 这将为您解决问题。您可以通过Global.asx文件中的
有什么想法吗?Elmah支持错误过滤-
这将为您解决问题。您可以通过Global.asx文件中的代码定义过滤器,也可以在elmah本身的xml配置中定义过滤器。步骤1:配置配置部分以包括elmah
errorFilter
部分:
<configSections>
<sectionGroup name="elmah">
<!-- ... -->
<!-- this is the important part -->
<section name="errorFilter" requirePermission="false"
type="Elmah.ErrorFilterSectionHandler, Elmah"/>
</sectionGroup>
</configSections>
包含http模块的旧版(旧版IIS):
<system.webServer>
<modules runAllManagedModulesForAllRequests="true">
<!-- ... -->
<add name="ErrorFilter" type="Elmah.ErrorFilterModule, Elmah"
preCondition="managedHandler" />
</modules>
</system.webServer>
<system.web>
<httpModules>
<add name="ErrorFilter" type="Elmah.ErrorFilterModule, Elmah" />
</httpModules>
</system.web>
问题在于,如果我想在配置文件中执行此操作,则它是“全部”或“无”,例如,
过滤所有404。您可以在配置文件中更具体一些-请参阅该链接的“使用JScript”部分。这将向您展示如何更具体地使用javascript语法定义复杂的条件,例如在URL上使用RegEx来匹配特定路径+1感谢您的关注,尽管这看起来有点讨厌!已经有一段时间没有使用它了,但是它不过滤掉所有的404吗?我只需要特定的文件类型,请参阅上面我对已接受答案的评论。这个答案对tbh没有帮助,sorry@Rippo-我的错-只是这个页面首先出现了如何从elmah日志中删除404,而接受答案中的链接已经失效。所以我在这里总结了我从谷歌学到的东西:)无论如何,我已经更新了我的答案以匹配“只过滤特定路径”。
<system.web>
<httpModules>
<add name="ErrorFilter" type="Elmah.ErrorFilterModule, Elmah" />
</httpModules>
</system.web>