【问题标题】:Routing error on Heroku with assets that are no longer even usedHeroku 上的路由错误,资产甚至不再使用
【发布时间】:2014-01-10 15:07:54
【问题描述】:

我几个月前在我的根路径更改了页面上的代码(许多部署之前,以及许多 rake assets:clean 和 assets:precompile 之前)但我几乎每天都在我的日志中收到此错误:

ActionController::RoutingError(没有路由匹配 [GET] "/assets/old_time_investor-8fbf5492bd22cc620b0208f84af82a6c.jpg")

我的代码中的任何地方都不再引用该图像文件。什么可能仍在尝试使用此图像文件?

【问题讨论】:

    标签: ruby-on-rails ruby-on-rails-3 heroku asset-pipeline


    【解决方案1】:

    我猜您的网站已被图像搜索引擎抓取,该引擎已记住该路径并正在尝试刷新它。我以前见过这样的事情。 yandex.com 过去常常像这样访问我的网站。

    您是否使用 AirBrake 或类似工具捕获异常?如果它捕获到该异常,请在异常的环境中搜索以查看请求的来源。如果有 HTTP_REFERRER 或 USER_AGENT 或 IP 地址,这可能会给你一个线索。

    如果您没有异常聚合器,只需查看您的 Heroku 日志以查找异常附近的 heroku[router] 行,然后通过 Google 搜索该行的 IP 地址并查看它的来源。

    【讨论】:

    • 谢谢。我查找了其中一个路由错误的 IP 地址,它说它来自 LinkedIn Corporation。 LinkedIn 是否出于某种原因抓取了我的网站?我查找的第二个错误来自 MSNBot,这显然是一个爬虫。
    【解决方案2】:

    您的某个视图中可能有一个引用该图像的链接。这个错误也应该出现在开发环境中,所以我建议从那里调试以获得即时反馈。

    【讨论】:

    • 几个月前它已从视图中完全删除
    猜你喜欢
    • 1970-01-01
    • 2017-07-29
    • 1970-01-01
    • 1970-01-01
    • 2011-12-13
    • 2020-08-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多