nginx - 如果 proxy_pass 包含变量,nginx 的反向代理返回 index.html 用于静态资源

问题描述 投票:0回答:0

我有以下 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/;
}
docker nginx nginx-reverse-proxy
© www.soinside.com 2019 - 2024. All rights reserved.