您当前的位置:首页 > 计算机 > 服务器 > Nginx

nginx中斜杠(/)详解

时间:12-14来源:作者:点击数:

本文详细对比了在Nginx配置中location和proxy_pass使用斜杠与否对URL转发的影响,通过实战演示,总结了不同情况下的地址转发规律:末尾无斜杠时追加URL路径,有斜杠时忽略location匹配部分。

不知大家日常在nginx配置时,是不是会对是否加斜杠充满疑惑?

配置location、proxy_pass时,加“/”与不加“/”的区别,今天我们通过实操去验证下。

talk is cheap, show me the code!!!


通过nginx代理访问地址:http://127.0.0.1/v1/pt/apply/page

  1. location、proxy_pass都不加斜杠
    location /v1 {
        proxy_pass http://127.0.0.1:8899;
    }
    实际访问代理地址:http://127.0.0.1:8899/v1/pt/apply/page
  2. location加斜杠,proxy_pass不加斜杠
    location /v1/ {
        proxy_pass http://127.0.0.1:8899;
    }
    实际访问代理地址:http://127.0.0.1:8899/v1/pt/apply/page
  3. location不加斜杠,proxy_pass加斜杠
    location /v1 {      
        proxy_pass http://127.0.0.1:8899/;
    }
    实际访问代理地址:http://127.0.0.1:8899//pt/apply/page
  4. location、proxy_pass都加斜杠
    location /v1/ {
        proxy_pass http://127.0.0.1:8899/;
    }
    实际访问代理地址:http://127.0.0.1:8899/pt/apply/page
  5. location不加斜杠,proxy_pass加"v1"
    location /v1 {
        proxy_pass http://127.0.0.1:8899/v1;
    }
    实际访问代理地址:http://127.0.0.1:8899/v1/pt/apply/page
  6. location加斜杠,proxy_pass加"v1"
    location /v1/ {
        proxy_pass http://127.0.0.1:8899/v1;
    }
    实际访问代理地址:http://127.0.0.1:8899/v1pt/apply/page
  7. location不加斜杠,proxy_pass加"v1/"
    location /v1 {
        proxy_pass http://127.0.0.1:8899/v1/;
    }
    实际访问代理地址:http://127.0.0.1:8899/v1/pt/apply/page
  8. location加斜杠,proxy_pass加"v1/"
    location /v1/ {
        proxy_pass http://127.0.0.1:8899/v1/;
    }
    实际访问代理地址:http://127.0.0.1:8899/v1/pt/apply/page

总结:

  • proxy_pass代理地址端口后无任何字符,转发后地址:代理地址+访问URL目录部分
  • proxy_pass代理地址端口后有目录(包括 / ),转发后地址:代理地址+访问URL目录部分去除location匹配目录(示例中的"v1"或"v1/")
方便获取更多学习、工作、生活信息请关注本站微信公众号城东书院 微信服务号城东书院 微信订阅号
推荐内容
相关内容
栏目更新
栏目热门
本栏推荐