nginx proxy_passredirect一切

我们在nginx反向代理服务器后面有一堆服务 在这里输入图像说明

foo.com/service1/index.html被redirect到service1/index.html好。

但是当service1/index.html具有像/js/bar.js这样的脚本src时,浏览器会调用foo.com/js/bar.js 。 我希望它所有的电话foo.com/service1/js/* 。 这怎么能实现?

这里是一个nginx conf的片段

 location /service1 { proxy_pass http://service1 } location /js/(.*)$ { proxy_pass http://service1/js } 

service2/js有一些资源时,它将redirect到foo.com/js并中断。 这怎么解决?

您需要更改在代理后面运行的应用程序,以便它们将生成以foo.com/serviceN/js开头的资源URL。 应用程序的基本URL是一个可configuration的项目。