gpt4 book ai didi

asp.net-mvc - MVC、Elmah、明显的黑客企图和 "generic"IgnoreRoutes

转载 作者:行者123 更新时间:2023-12-01 02:54:31 26 4
gpt4 key购买 nike

任何人都可以就过滤我的 Elmah ( http://code.google.com/p/elmah/ ) 异常日志提供建议吗?

Elmah 是一个非常有值(value)的工具,可以突出显示我在 Web 应用程序中的明显错误和疏忽。

然而现在..大多数Elmah条目与我自己的愚蠢无关(好吧 - 也许他们有 - 因此我的问题),但任何建议将不胜感激。

我的 Elmah 日志现在有 10'000 条类似于以下内容的条目:

  • 路径 Controller
    '/ws/login.php' 找不到或
    它没有实现 IController。
  • 路径 Controller
    找不到“/text/javascript”
    或者它没有实现 IController。
  • 路径 Controller
    '/jlkqyvaugdaktp.html' 不能
    发现或不执行
    Controller 。 [[实际上是 100
    这些!! ...做这些随机页面
    在“HackerDom”中意味着什么? ]]
  • 路径 Controller
    '/脚本/thickbox/macFFBgHack.png'
    找不到或没有
    实现 IController。

  • 所以..到“问题”

    很明显,这些异常中的绝大多数是由 IController 生成的……我可以告诉 Elmah 只是“忘记”这些并继续记录我真正的异常吗?

    还是我非常通用的 MVC IgnoreRoute 设置不够好?我是否应该忽略“.htm”、“*.php”和所有其他内容,以便我可以更真实地看到 Elmah 报告关于我的应用程序可能更真实地丢失的页面/项目/对象?

    非常感谢您的时间和考虑。

    我现有的路线设置如下所示:
             routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
    routes.IgnoreRoute("{*favicon}", new { favicon = @"(.*/)?favicon.ico(/.*)?" });
    routes.IgnoreRoute("{*forums}", new { forums = @"cccForums/.*" });
    routes.IgnoreRoute("{file}.txt");

    /// REAL ROUTES
    routes.MapRoute(
    "ItemIndex", // Route name
    "Item/Index/{page}", // URL with parameters
    new { controller = "PageItem", action = "Index", page = 1} // Parameter defaults
    );

    .............
    .............


    /// LAST CASE

    routes.MapRoute("Error", "{*url}", new { controller = "Site", action = "Map" });

    最佳答案

    一种解决方案是实现一个捕获所有路由,将所有未知请求重定向到 404 页面。这将防止未捕获的异常,并且您的最终用户会获得漂亮的页面(非黑客类型)。

    routes.MapRoute("Error", "{*url}",
    new { controller = "Error", action = "http404" }
    );

    将它放在 global.asax 中注册路由函数的末尾。您应该会看到所有 ELMAH 错误都消失了。

    编辑

    还不快睡! :)如果您不想记录 404 错误(或与 ELMAH 相关的任何其他类型的错误),您应该能够在您的 web.config 中执行以下操作:
    <elmah>
    ...
    <errorFilter>
    <test>
    <equal binding="HttpStatusCode" value="404" type="Int32" />
    </test>
    </errorFilter>
    </elmah>

    ELMAH ErrorFiltering Documentation

    关于asp.net-mvc - MVC、Elmah、明显的黑客企图和 "generic"IgnoreRoutes,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3532006/

    26 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com