Passenger + Nginx显示自定义500页

时间:2012-10-12 10:01:37

标签: ruby-on-rails-3 nginx passenger

我正在使用Rails 3.2和passenger + nginx。我想在数据库服务器关闭时显示不错的自定义500页面。当我的rails应用无法启动时,我想展示一些东西。这是我的nginx:

server {
  listen 80;
  server_name localhost;
  root /var/www/store/public;
  error_page   500  /500.html;

  # root
  location / {
    passenger_enabled on;
    rails_env production;
    passenger_use_global_queue on;
  }

}

以上配置根本不起作用。当它发生时,它只显示:

  

内部服务器错误(500)

有什么想法吗?

3 个答案:

答案 0 :(得分:3)

Phusion Passenger作者在这里。使用passenger_intercept_errors off

答案 1 :(得分:1)

来自乘客文件http://www.modrails.com/documentation/Users%20guide%20Nginx.html#PassengerFriendlyErrorPages

passenger_friendly_error_pages off

哪个可以放在http块,服务器块或位置块内,不会显示启动失败的乘客错误,我相信链接到nginx提供的500错误页面。

答案 2 :(得分:1)

mariow的链接让我得到答案。错误文件位于templates文件夹中。我使用rvm,因此我的模板文件夹位于/home/forest.handford/.rvm/gems/ruby-2.0.0-p481/gems/passenger-4.0.50/resources/templates/。使用find / -name templates | grep passenger找到你的。我正在为我的网站更改undisclosed_error.html.template,因为这是人们输入无效网址时发生的错误。