Вам нужно поймать исключение и перенаправление, если код ошибки 404.
См. Этот railscast для получения полной информации: http://railscasts.com/episodes/53-handling-exceptions-revised?view=asciicast
Основы следующие.
Добавьте это в config/application.rb
исключений маршрута к приложению:
config.exceptions_app = self.routes
Создать errors_controller
и затем отобразить ошибки в ее шоу действия в вашем routes.rb
файле:
match ':status', to: 'errors#show', constraints: {status: /\d{3}/ }
errors_controller.rb
:
class ErrorsController < ApplicationController
def show
if request.path == '/404'
redirect_to root_path
else
render text: request.path
end
end
end
Затем визуализируйте некоторые разумные ошибки, используя шаблон show для тех, которые не являются ошибками 404.
Вы можете использовать совпадение в маршруте для этого 'match '/index.php",: to => "somecontroller # action",: via => "get" ' – jbmyid