[英]How to handle routing of deprecated assets in Rails?
在我们的生产日志中,当某些 IP(可能是机器人)尝试访问已弃用的资产时,我们会收到这样的错误:
ActionController::RoutingError (No route matches [GET] "/fonts/bootstrap/glyphicons-halflings-regular.svg")
这对我们来说没什么大不了的,但我很好奇处理这个问题的最佳方法是什么。 我觉得我们应该返回 410 HTTP 状态,而不是它现在给出的 404。 此外,真的很想从日志中获取这 30 行长的错误消息。
Rails 中是否有处理这些已弃用的资产路由的最佳实践或约定?
我认为最好由您的网络服务器完成,而不是 Rails 应用程序。
我不是对 Nginx 的期望,但您可能应该添加如下内容:
location ~* /fonts/bootstrap/ {
if (-f $request_filename) {
break;
}
return 410;
}
Nginx 位置文档将提供有关如何正确执行此操作的更多信息。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.