この投稿によると:
http://blog.plataformatec.com.br/2012/01/my-five-favorite-hidden-features-in-rails-3-2/
エラーを処理する最新の方法は次のようになります。
# application.rb:
config.exceptions_app = self.routes
#routes.rb
match "/404", to: "site#not_found"
ただし、彼は、railsエラーアプリが500エラー、422エラー(およびおそらくこれらの2つのページに集中した他のエラー)も処理するという事実に対処していません。
だから私はこのようなソリューションを一緒にハックしました:
# routes.rb
rack_error_handler = ActionDispatch::PublicExceptions.new('public/')
match "/422" => rack_error_handler
match "/500" => rack_error_handler
500ページを軽量に保つことができるのは良いことです。
他にもキャッチすべきエラーはありますか?私の理解では、500ページは2つのラックアプリを使用しますが、それでもメインのRailsアプリから十分に安全に分離されています。これは強いですか?
ありがとう!