我有以下 nginx 配置(nginx 托管在 docker 以及代理资源中):
location /coverage-22.1/ {
resolver 127.0.0.11 valid=30s ipv6=off;
set $url coverage-report-22.1;
proxy_pass http://$url/;
}
我使用 $url 变量来防止错误“在上游中找不到主机”,正如其建议的那样:docker-nginx-stopped-emerg-11-host-not-found-in-upstream。
coverage-report-22.1
是我的 docker 中容器的名称。
此配置有助于防止
host not found in upstream
错误,但所有请求的资源(如http://myserver/coverage-22.1/js/site.js
)返回索引页面的内容。
默认配置完美运行,但如果代理 url 不可用,nginx 会失败并出现上述错误:
location /coverage-22.1/ {
proxy_pass http://coverage-report-22.1/;
}