Nginx location 配置 后路径映射问题 (路径替换)


1.proxy_pass的目标地址,默认不带/,表示只代理域名,url和querystring部分不会变(把请求的path拼接到proxy_pass目标域名之后作为代理的URL)

2.如果在目标地址后增加/,则表示把path中location匹配成功的部分剪切掉之后再拼接到proxy_pass目标地址

例子:

server {
        location  /abc {
                proxy_pass http://server_url;
        }

       location  /abc {
                proxy_pass http://server_url/;
        }
 }

比如请求 /abc/b.html

如上两个匹配成功后,实际代理的目标url分别是

http://server_url/abc/b.html (把/abc/b.html拼接到http://server_url之后)

http://server_url/b.html (把/abc/b.html的/abc去掉之后,拼接到http://server_url/之后)

 

 

如何location 里面配置的是root路径,那么不管root后面的本地路径是否带有/ 都会拼接请求的path路径在后面。

 

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM