欢迎来到代码驿站!

Nginx

当前位置:首页 > 服务器 > Nginx

nginx配置proxy_pass中url末尾带/与不带/的区别详解

时间:2021-04-24 09:27:17|栏目:Nginx|点击:

nginx配置proxy_pass时url末尾带“/”与不带“/”的区别如下:

注意:当location为正则表达式匹配模式时,proxy_pass中的url末尾是不允许有"/"的,因此正则表达式匹配模式不在讨论范围内。

 proxy_pass配置中url末尾带/时,nginx转发时,会将原uri去除location匹配表达式后的内容拼接在proxy_pass中url之后。

测试地址:http://192.168.171.129/test/tes.jsp

场景一:

location ^~ /test/ {
 proxy_pass http://192.168.171.129:8080/server/;
}

代理后实际访问地址:http://192.168.171.129:8080/server/tes.jsp

场景二:

location ^~ /test {
 proxy_pass http://192.168.171.129:8080/server/;
}

代理后实际访问地址:http://192.168.171.129:8080/server//tes.jsp

场景三:

location ^~ /test/ {
 proxy_pass http://192.168.171.129:8080/;
}

代理后实际访问地址:http://192.168.171.129:8080/tes.jsp

场景四:

location ^~ /test {
 proxy_pass http://192.168.171.129:8080/;
}

代理后实际访问地址:http://192.168.171.129:8080//tes.jsp

proxy_pass配置中url末尾不带/时,如url中不包含path,则直接将原uri拼接在proxy_pass中url之后;如url中包含path,则将原uri去除location匹配表达式后的内容拼接在proxy_pass中的url之后。

测试地址:http://192.168.171.129/test/tes.jsp

场景一:

 location ^~ /test/{
 proxy_pass http://192.168.171.129:8080/server;
 }

代理后实际访问地址:http://192.168.171.129:8080/servertes.jsp

场景二:

location ^~ /test {
 proxy_pass http://192.168.171.129:8080/server;
}

代理后实际访问地址:http://192.168.171.129:8080/server/tes.jsp

场景三:

location ^~ /test/ {
 proxy_pass http://192.168.171.129:8080;
}

代理后实际访问地址:http://192.168.171.129:8080/test/tes.jsp

场景四:

location ^~ /test {
 proxy_pass http://192.168.171.129:8080;
}

代理后实际访问地址:http://192.168.171.129:8080/test/tes.jsp

上一篇:iis+nginx实现负载均衡的详细步骤

栏    目:Nginx

下一篇:nginx禁止某个IP访问站点的设置方法

本文标题:nginx配置proxy_pass中url末尾带/与不带/的区别详解

本文地址:http://www.codeinn.net/misctech/107686.html

推荐教程

广告投放 | 联系我们 | 版权申明

重要申明:本站所有的文章、图片、评论等,均由网友发表或上传并维护或收集自网络,属个人行为,与本站立场无关。

如果侵犯了您的权利,请与我们联系,我们将在24小时内进行处理、任何非本站因素导致的法律后果,本站均不负任何责任。

联系QQ:914707363 | 邮箱:codeinn#126.com(#换成@)

Copyright © 2020 代码驿站 版权所有