我将 nginx 设置为 docker 容器中的反向代理,以链接到容器外的站点。我有一个 vhost 配置设置如下(我尝试在家庭助理的位置之前添加 ^~ ):
server { # simple reverse-proxy
listen 80;
location / {
proxy_pass http://192.168.1.99:6789;
}
location ^~ /home-assistant {
proxy_pass http://192.168.1.99:8123/;
}
location /calibre-web/ {
proxy_pass http://192.168.1.99:8181/;
}
}
Run Code Online (Sandbox Code Playgroud)
对于 home-assistant 和 calibre-web 站点,页面都会加载,但我收到所有其他项目(图像、CSS 等)的 404 错误。 如果我尝试单击应用程序中的链接,它会将我链接到 192.168.1.99/file 而不是 192.168.1.99/site-folder/file。下面是日志中的一些记录(注意一个 200 响应和其他 404 响应)。我在这里做错了什么?在此先感谢您的帮助。
192.168.1.6 - randy [15/Aug/2016:03:15:42 +0000] "GET /frontend/panels/dev-template-0a099d4589636ed3038a3e9f020468a7.html HTTP/1.1" 404 199 "http://192.168.1.99/home-assistant/" "Mozilla/5.0 (X11; CrOS x86_64 8350.60.0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/52.0.2743.85 Safari/537.36"
192.168.1.6 - randy [15/Aug/2016:03:15:42 +0000] …Run Code Online (Sandbox Code Playgroud)