Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/450.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript NGINX反向代理未加载资源,docker web app上的相对URL_Javascript_Html_Docker_Nginx_Proxy - Fatal编程技术网

Javascript NGINX反向代理未加载资源,docker web app上的相对URL

Javascript NGINX反向代理未加载资源,docker web app上的相对URL,javascript,html,docker,nginx,proxy,Javascript,Html,Docker,Nginx,Proxy,我在docker容器上的服务器上运行多个Web应用程序,这些容器映射到它们自己的端口。 我正在尝试使用NGINX实现反向代理,因此我不必转到http://hostname:4012访问webapp,而不是http://hostname/metrics进入同一页面。 通常情况下,这样一个简单的proxy_pass会让它起作用: location /metrics/ { proxy_pass http://localhost:4012/; } 从某种意义上讲,它可以访问index.html,但不会

我在docker容器上的服务器上运行多个Web应用程序,这些容器映射到它们自己的端口。 我正在尝试使用NGINX实现反向代理,因此我不必转到
http://hostname:4012
访问webapp,而不是
http://hostname/metrics
进入同一页面。 通常情况下,这样一个简单的proxy_pass会让它起作用:

location /metrics/ {
proxy_pass http://localhost:4012/;
}
从某种意义上讲,它可以访问index.html,但不会加载html中的任何脚本。 我通过添加一个sub_过滤器在html中创建一个基本url,以一种骇人的方式修复了这个问题:

location /metrics/ {
            proxy_pass http://localhost:4012/;
            sub_filter_once off;
            sub_filter 'http://localhost:4012/' '$scheme://$host/metrics/';
            sub_filter '<head>' '<head>\n<base href="http://hostname:4012/">';
    }

你知道我如何让它与
/metrics/
位置一起工作,以便我可以代理我的所有应用程序吗???

也许容器中运行的节点服务器中缺少某些东西??
location / {
proxy_pass http://localhost:4012/;
}