您当前的位置:首页 > 网站建设 > 网站维护
| php | asp | css | H5 | javascript | Mysql | Dreamweaver | Delphi | 网站维护 | 帝国cms | React | 考试系统 | ajax | jQuery |

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

51自学网 2022-07-04 11:37:44
  网站维护

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


下载地址:
Linux安装Nginx步骤详解
详解SpringBoot项目docker环境运行时无限重启问题
51自学网,即我要自学网,自学EXCEL、自学PS、自学CAD、自学C语言、自学css3实例,是一个通过网络自主学习工作技能的自学平台,网友喜欢的软件自学网站。
京ICP备13026421号-1