Мы используем следующий кетчуп все маршрут routes.rb для 404-х:Как отобразить одну и ту же страницу 404 для всех неизвестных запросов, включая изображения, в Rails 3.2 без указания каждого формата файла отдельно?
# Catches all 404 errors and redirects
match '*url' => 'default#error_404'
Но это порождает ошибку 500 внутреннего сервера ниже, потому что мы специально не поймать форматы PNG в error_404.
Started GET "/images/doesnotexistyo.png" for 71.198.44.101 at 2013-03-08 07:59:24 +0300
Processing by DefaultController#error_404 as PNG
Parameters: {"url"=>"images/doesnotexistyo"}
Completed 500 Internal Server Error in 1ms
ActionView::MissingTemplate (Missing template default/error_404, application/error_404 with {:locale=>[:en], :formats=>[:png], :handlers=>[:erb, :builder]}. Searched in:
* "/home/prod/Prod/app/views"
В идеале, все неизвестные запросы будут оказывать по умолчанию # error_404 HTML действия. Мы не можем понять, как получить format.any для визуализации действия 404 HTML. Как все неизвестные запросы могут быть обработаны с ответом на ошибку 404 HTML?
, что делает возвращение ложным делать? – Crashalot
Я тоже не вижу причин для возврата false. – ben