我们的设置是两台服务器:
托pipeWP的服务器1使用Nginx作为Web服务器,反向代理服务器2。
在服务器1中,我们有一个简单的反向代理位置块:
location /foo/ { proxy_pass http://1.1.1.2/foo/; proxy_set_header X-Real-IP $remote_addr; proxy_set_header Host $host; proxy_redirect off; proxy_intercept_errors on; }
在服务器2中,我们也有一个位置块,因为平台需要重写一次URL。 这是一个混杂的包,因为平台通过index.php?args加载一些内容,但也有静态内容:
location /foo/ { index index.php; try_files $uri $uri/ /foo/index.php?$args; }
我们面临的问题是,尽pipedomain.com/foo/?bar,domain.com/foo/bar效果很好,domain.com/foo/img/photo.png给404。
我认为这是由于try_files但我似乎无法得到它的工作。
毕竟这不是关于反向代理的。 服务器1中有另一个正则expression式位置块,它捕获了所有的图像请求,并且根本没有使其反向代理。 问题解决了。
再次张贴作为解决问题的答案