nginx proxy_pass 后面的url 加与不加/的区别
nginx proxy_pass 后面的url 加与不加/的区别
周思承ZSC 发表于1年前
nginx proxy_pass 后面的url 加与不加/的区别
  • 发表于 1年前
  • 阅读 8
  • 收藏 0
  • 点赞 0
  • 评论 0

腾讯云 技术升级10大核心产品年终让利>>>   

    在nginx中配置proxy_pass时,当在后面的url加上了/,相当于是绝对根路径,则nginx不会把location中匹配的路径部分代理走;如果没有/,则会把匹配的路径部分也给代理走。    下面列出4种情况,分别用http://218.75.108.154/proxy/info 进行访问。
    
  

upstream mobile{
    server 172.16.10.172:8081;
}

    第一种:
  

 location /proxy {
     proxy_pass http://mobile/;
 }


    该情况会被代理到 http://172.16.10.172:8081/info;
    
    第二种:
  

  location /proxy {
        proxy_pass http://mobile;
  }


    该情况会被代理到 http://172.16.10.172:8081/proxy/info;
    
    第三种:
 

location /proxy {
   proxy_pass http://mobile/mobile-web/;
}


    该情况会被代理到 http://172.16.10.172:8081/mobile-web/info;
    
    第四种:
 

location /proxy {
     proxy_pass http://mobile/mobile-web;
}


    该情况会被代理到 http://172.16.10.172:8081/mobile-webinfo;
    
    从结果可以看出,应该说分为两种情况才正确。即http://172.16.10.172:8081(上面的第二种) 这种和 http://172.16.10.172:8081(上面的第1,3,4种) 这种。

标签: Nginx
共有 人打赏支持
粉丝 0
博文 17
码字总数 7885
×
周思承ZSC
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: