proxy_pass 只是HOST,不可以包含任何路径
如果proxy_pass后面没有任何URL路径信息(比如/,/xxx等),则反向代理的地址会包含location中的匹配部分,否则只会拼接匹配后的剩余路径 PS: 上面是最重要且唯一的一条规则,请记住
多种情况验证
假设请求:http://localhost/online/wxapi/test/loginSwitch
第一种情况
1 | proxy_pass`结尾有`/ |
代理后的实际地址:http://localhost:8080/test/loginSwitch
第二种情况
1 | proxy_pass`结尾没有`/ |
代理后的实际地址:http://localhost:8080/online/wxapi/test/loginSwitch
第三种情况
1 | proxy_pass`结尾有`/web |
代理后的实际地址:http://localhost:8080/webtest/loginSwitch
注意:因为是拼接剩余部分,所以路径中可能有单个词的拼接,比如
webtest
第四种情况
1 | proxy_pass`结尾有`/web/ |
代理后的实际地址:http://localhost:8080/web/test/loginSwitch
正则匹配location的情况, proxy_pass不允许以/结尾
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 小五的个人杂货铺!
