【发布时间】:2019-05-27 14:08:30
【问题描述】:
当我尝试转到 site.ru/gdfgsdf 页面时,它说:
Routing Error
No route matches [GET] "/gfdg"
Rails.root: /site.ru
Application Trace | Framework Trace | Full Trace
Routes
Routes match in priority from top to bottom
但是,当我尝试转到 site.ru/404 页面时,它显示的是我的工作 404 页面。
如果没有在routs注册,怎么给大家做一个404页面?
【问题讨论】:
-
我已经成功了。这不是一个解决方案:(
-
请发布您的路线文件。它在开发中有效但在生产中无效?在更改
application.rb文件后,您是否重新启动了 Rails 服务器? -
我的路线:匹配'/404',到:'errors#not_found',通过::所有匹配'/422',到:'errors#unacceptable',通过::所有匹配'/ 500',至:'errors#internal_server_error',通过::所有匹配'/404',至:'errors#not_found',通过::所有匹配'/422',至:'errors#unacceptable',通过::全部匹配 '/500',到:'errors#internal_server_error',通过::all
-
/404对 Rails 没有任何意义。您可以通过添加默认路由来捕获所有未命中的信息,例如/*path或在 ApplicationController 中使用rescue_from。
标签: ruby-on-rails ruby routing http-status-code-404