Passenger + Nginx + Sinatra:不出现友好错误页面

Passenger + Nginx + Sinatra: friendly error page does not appear

刚刚由 RVM 和 Passender 安装Ruby:gem install passenger && rvmsudo passenger-install-nginx-module

简单的 Sinatra 应用程序运行良好:

app.rb:

require 'sinatra'
get '/' do
  "Hello World!"
end

config.ru:

require 'sinatra'
require './app.rb'
run Sinatra::Application

但是当我在代码中添加错误时,例如:

require 'sinatra'
get '/' do
  aaa # error here
  "Hello World!"
end

我希望看到紫色的友好错误页面,但我只看到:内部服务器错误 如果 passenger_app_env production in nginx.conf,或标准 发生错误 nginx 错误页面如果生产passenger_app_env 开发。 在这两种情况下,error.log

中都会出现错误消息

在这里提问 https://github.com/sinatra/sinatra/issues/963 并得到了答案。 现在可以使用了!

The fix is already in master branch. Until a new release is made, you can point the gem to master:

# Gemfile
gem 'sinatra', github: 'sinatra/sinatra'