Ruby on rails - 将异常堆栈跟踪添加到500错误页面?

fre*_*set 2 ruby-on-rails ruby-on-rails-3

我有一个Rails 3应用程序,当前发生内部错误时,它会显示以下列出的页面之一:

./views/exceptions/internal_server_error.html.haml
./views/exceptions/internal_server_error.json.erb

如何获取HTML 500错误页面以显示异常的堆栈跟踪?我正在运行Apache而不是Webrick,我希望在生产和开发中都能显示异常.模式,因为这是一个内部应用程序.我尝试在internal_server_error.html.haml页面中显示@exception但是没有填充.

Nev*_*vir 8

如果要在生产中显示完整堆栈跟踪,请在以下行中注释掉以下行config/environments/production.rb:

config.consider_all_requests_local = false
Run Code Online (Sandbox Code Playgroud)

这是一个命名很差的配置选项,但这就是Rails用来确定是否连接异常处理中间件的方法.

  • 我已经在development.rb中有"config.consider_all_requests_local = true"并且永远不会在错误上获得堆栈跟踪,我总是被重定向到"/views/exceptions/internal_server_error.html.haml",在我的情况下只显示一些文本,没有例外信息. (3认同)