如果上游closures,则显示自定义503页面

我使用nginx作为apache服务器的前端。 configuration文件如下所示:

upstream apache { server localhost:8000; } server { listen 80; error_page 503 /www/static/503.html; # need some magic here # location /static/ { root /www/static/; } location / { proxy_path http://apache/; } } 

现在,当apacheclosures时,我收到一个由nginx生成的普通的502页面。 如何使它服务我的自定义错误页面,并返回在这种情况下更相关的状态代码503?

像这样的东西

 upstream apache { server localhost:8000; } server { listen 80; error_page 502 503 /www/static/503.html; location /static/ { root /www/static/; } location / { proxy_path http://apache/; } } 

您可以将标准错误代码附加在一起,以显示单个页面,以查看几种类型的错误。
例如:

 error_page 502 503 /www/static/503.html; 

有关更多参考,请参阅error_page手册


它说error_page手册

此外,可以将答案的编码更改为另一个,例如:

 error_page 404 =200 /.empty.gif; 

另外一个选择
要使它返回一个不同的错误代码,你可以使用一个return关键字
例如:

 # check for a condition if (condition) { return 503; } 

另见
nginx:创建HTTP 503维护自定义页面