nginx не обслуживает мою error_page

У меня есть приложение Sinatra, размещенное на Unicorn, а перед ним nginx. Когда если приложение Sinatra выдает ошибки (возвращает 500), я бы хотел обслуживать статическую страницу, а не стандартную «Внутреннюю ошибку сервера». У меня следующая конфигурация nginx:

server {
  listen 80 default;
  server_name *.example.com;
  root /home/deploy/www-frontend/current/public;

  location / {
    proxy_pass_header Server;
    proxy_set_header Host $http_host;
    proxy_redirect off;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Scheme $scheme;
    proxy_connect_timeout 5;
    proxy_read_timeout 240;
    proxy_pass http://127.0.0.1:4701/;
  }

  error_page 500 502 503 504 /50x.html;
}

Директива error_page есть, и у меня есть sudo 'd как www-data (Ubuntu) и проверил, я могу cat файл, таким образом, это не проблема с правами доступа. С указанным выше файлом конфигурации и service nginx reload страница I получение при ошибке остается той же «Внутренняя ошибка сервера».

В чем моя ошибка?

41
задан François Beausoleil 3 January 2012 в 16:10
поделиться