我正在使用nginx作为单个机器的反向代理.
我想在后端机器关闭时有一个错误页面.
这是我的配置文件:
server {
listen 80;
access_log /var/log/nginx/access.log;
root /var/www/nginx;
error_page 403 404 500 502 503 504 /error.html;
location / {
proxy_pass http://192.168.1.78/;
include /etc/nginx/proxy.conf;
}
最佳答案
啊哈,我看到了问题.您没有为nginx提供实际提供静态文件(如/error.html)的方法,因此它试图将它们上游传递给您的后端.
快速解决方案是:
location /error.html {
internal;
}
这将导致nginx到handle /error.html
itself.然后它将尝试从定义的文档根目录中提供文件.
顺便说一下,您可能希望对4xx错误和5xx错误使用不同的错误页面. “未找到”或任何不是你想要的人(或搜索引擎!)看看后端是否暂时停止.