Nginx错误页面不起作用

Cro*_*sey 11 nginx

我有以下vhost条目

    server {
    listen       80;
    server_name  example.com www.example.com;

    #access_log   /var/log/nginx/nginx-access.log;

    location  /media/ {
    root /home/luke/django/solentcms;
     }

    location  /admin/media/ {
    root /home/luke/virts/django1.25/lib/python2.7/site-packages/django/contrib/admin/media;
     }

    location / {
    proxy_pass   http://127.0.0.1:8001;
    }

    error_page 404 /404.html;
    location = /404.html {
            root    /home/luke/django/solentcms/404;
            allow   all;
     }


    error_page 500 502 503 504 /500.html;
    location = /500.html {
            root    /home/luke/django/solentcms/404;
            allow   all;
     }

}
Run Code Online (Sandbox Code Playgroud)

然而,404和50x错误仍然被重定向到可怕的nginx默认页面.任何想法为什么?此语法适用于我的其他服务器之一.

干杯.

kol*_*ack 21

这些错误来自你的后端吗?您可能需要添加proxy_intercept_errors ; 与您的proxy_pass一起.

  • 如果您使用的是fastcgi,则设置为`fastcgi_intercept_errors on;` (6认同)
  • 对于uwsgi,有'uwsgi_intercept_errors on;` (5认同)
  • 谢谢,它排序了. (2认同)