nginx配置之斜杠详解
配置location、proxy_pass时,加“/”与不加“/”的区别,今天我们通过实操去验证下。
以下测试都通过nginx代理访问地址:http://127.0.0.1/v1/pt/apply/page:
第一种:location、proxy_pass都不加斜杠
location /v1 { proxy_pass http://127.0.0.1:8899; } 实际访问代理地址:http://127.0.0.1:8899/v1/pt/apply/page
第二种:location加斜杠,proxy_pass不加斜杠
location /v1/ { proxy_pass http://127.0.0.1:8899; } 实际访问代理地址:http://127.0.0.1:8899/v1/pt/apply/page
第三种:location不加斜杠,proxy_pass加斜杠
location /v1 { proxy_pass http://127.0.0.1:8899/; } 实际访问代理地址:http://127.0.0.1:8899//pt/apply/page
第四种:location、proxy_pass都加斜杠
location /v1/ { proxy_pass http://127.0.0.1:8899/; } 实际访问代理地址:http://127.0.0.1:8899/pt/apply/page
第五种:location不加斜杠,proxy_pass加"v2"
location /v1 { proxy_pass http://127.0.0.1:8899/v2; } 实际访问代理地址:http://127.0.0.1:8899/v2/pt/apply/page
第六种:location加斜杠,proxy_pass加"v2"
location /v1/ { proxy_pass http://127.0.0.1:8899/v2; } 实际访问代理地址:http://127.0.0.1:8899/v2pt/apply/page
第七种:location不加斜杠,proxy_pass加"v2/"
location /v1 { proxy_pass http://127.0.0.1:8899/v2/; } 实际访问代理地址:http://127.0.0.1:8899/v2//pt/apply/page
第八种:location加斜杠,proxy_pass加"v2/"
location /v1/ { proxy_pass http://127.0.0.1:8899/v2/; } 实际访问代理地址:http://127.0.0.1:8899/v2/pt/apply/page
总结:
proxy_pass代理地址端口后无任何字符,转发后地址:代理地址+访问URL目录部分
proxy_pass代理地址端口后有目录(包括 / ),转发后地址:代理地址+访问URL目录部分去除location匹配目录(示例中的"v1"或"v1/")
作者:superSK
链接:https://www.jianshu.com/p/2af4cebe8f90
来源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!