Nginx:反向代理Influxdb找不到静态文件

Nginx:反向代理Influxdb找不到静态文件

我有一个设置,其中有多个使用 docker compose 和一个 Nginx(nginx:1.19-alpine)运行的服务,它充当所有服务的反向代理并提供一些静态文件。

一项服务是 Influxdb 容器 (influxdb:2.1.0-alpine),它为 Web 浏览器提供 UI。
我想反向代理到这个容器,但是这个容器的静态文件有问题。

到目前为止,这是我的规则:

upstream database {
    server data-db:8086;
}

server {

    listen 80;

    location /influx/ {
        proxy_set_header X-Real-IP  $remote_addr;
        proxy_set_header X-Forwarded-For $remote_addr;
        proxy_set_header Host $host;
        proxy_pass http://database/;
    }
}

当我浏览 http://localhost:8080/influx/ (localhost:8080 是 Nginx)时,出现白屏,
控制台显示找不到静态文件。

在此处输入图片描述

在图片中你可以看到,浏览器尝试在 / 而不是 /influx/ 处查找文件。这是一个问题,因为我在 / 上还有其他东西。
我见过类似的问题,但我的设置无法正常运行。

答案1

我想这个问题没有真正的答案。我发现了这个两年前的 Github 问题:https://github.com/influxdata/influxdb/issues/15721
这是一个已知问题,但目前尚未修复。

一种解决方法是使用子域名,这样您就可以在根目录(如 influx.example.com/)上提供 Influx。对于在本地主机上托管,必须在 hosts 文件中添加一个条目,并将该“域”添加到 nginx 的服务器指令中。

相关内容