Rails在生产中不渲染404

时间:2015-03-04 21:59:17

标签: ruby-on-rails ruby routes actioncontroller

我有一个rails应用程序。在生产中我的应用程序抛出路由错误而不是呈现404.html或500.html。为什么Rails会抛出错误而不是渲染404页面? (来自dev的输出config.consider_all_requests_local = false

Started GET "/asdfadsfdsaf" for 127.0.0.1 at 2015-03-04 16:51:12 -0500

ActionController::RoutingError (No route matches [GET] "/asdfadsfdsaf"):
 ...

2 个答案:

答案 0 :(得分:4)

只要您的应用正在运行,您的网络服务器就不会生成404.

如果您希望路由错误生成404,请参阅本文中的讨论:render a 404 page on routing error in rails

答案 1 :(得分:3)

检查您的config/environment/*.rb文件(对应您的环境)。它应包含以下字符串:

config.consider_all_requests_local = false

检查此值是否设置为false。在这种情况下,将呈现404.html ot 500.html个文件。