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


Posted in Servers onMarch 31, 2021

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

到此这篇关于nginx配置proxy_pass中url末尾带/与不带/的区别详解的文章就介绍到这了,更多相关nginx proxy_pass url末尾内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Servers 相关文章推荐
Nginx优化服务之网页压缩的实现方法
Mar 31 Servers
Nginx反向代理及负载均衡如何实现(基于linux)
Mar 31 Servers
详解Nginx启动失败的几种错误处理
Apr 01 Servers
nginx请求限制配置方法
Jul 09 Servers
nginx中proxy_pass各种用法详解
Nov 07 Servers
Nginx 反向代理解决跨域问题多种情况分析
Jan 18 Servers
iSCSI服务器CHAP双向认证配置
Apr 01 Servers
Consul在linux环境的集群部署
Apr 08 Servers
Nginx+Tomcat负载均衡多实例详解
Apr 11 Servers
详解Nginx的超时keeplive_timeout配置步骤
May 25 Servers
CentOS7环境下MySQL8常用命令小结
Jun 10 Servers
详解ZABBIX监控ESXI主机的问题
Jun 21 Servers
Linux安装Nginx步骤详解
Nginx 502 Bad Gateway错误原因及解决方案
Nginx访问日志及错误日志参数说明
Mar 31 #Servers
nginx对http请求处理的各个阶段详析
Mar 31 #Servers
Nginx服务器添加Systemd自定义服务过程解析
Mar 31 #Servers
nginx处理http请求实现过程解析
Mar 31 #Servers
Nginx服务器添加Systemd自定义服务过程解析
Mar 31 #Servers
You might like
PHP stristr() 函数(不区分大小写的字符串查找)
2010/06/03 PHP
PHP获取浏览器信息类和客户端地理位置的2个方法
2014/04/24 PHP
使用Composer安装Yii框架的方法
2016/03/15 PHP
Nodejs使用mysql模块之获得更新和删除影响的行数的方法
2014/03/18 NodeJs
DOM基础教程之模型中的模型节点
2015/01/19 Javascript
IE8下jQuery改变png图片透明度时出现的黑边
2015/08/30 Javascript
体验jQuery和AngularJS的不同点及AngularJS的迷人之处
2016/02/02 Javascript
JS简单获取及显示当前时间的方法
2016/08/03 Javascript
浅谈js的异步执行
2016/10/18 Javascript
扩展Bootstrap Tooltip插件使其可交互的方法
2016/11/07 Javascript
JavaScript实现简易的天数计算器实例【附demo源码下载】
2017/01/18 Javascript
手机端转换rem适应
2017/04/01 Javascript
JavaScript(js)处理的HTML事件、键盘事件、鼠标事件简单示例
2019/11/19 Javascript
vue实现整屏滚动切换
2020/06/29 Javascript
vue 数据操作相关总结
2020/12/17 Vue.js
Python中处理unchecked未捕获异常实例
2015/01/17 Python
python将图片文件转换成base64编码的方法
2015/03/14 Python
Django权限机制实现代码详解
2018/02/05 Python
django-crontab 定时执行任务方法的实现
2019/09/06 Python
python入门之基础语法学习笔记
2020/02/08 Python
解决tensorflow 释放图,删除变量问题
2020/06/23 Python
python 利用openpyxl读取Excel表格中指定的行或列教程
2021/02/06 Python
西班牙手机之家:Phone House
2018/10/18 全球购物
C++的几个面试题附答案
2016/08/03 面试题
What's the difference between Debug and Trace class? (Debug类与Trace类有什么区别)
2013/09/10 面试题
UML设计模式笔试题
2014/06/07 面试题
Java程序员面试题
2013/07/15 面试题
教师队伍管理制度
2014/01/14 职场文书
高中美术教学反思
2014/01/19 职场文书
军训自我鉴定怎么写
2014/02/13 职场文书
商家认证委托书格式
2014/10/16 职场文书
2015年保险公司工作总结
2015/04/24 职场文书
烛光里的微笑观后感
2015/06/17 职场文书
感恩教育观后感
2015/06/17 职场文书
安全生产标语口号
2015/12/26 职场文书
MySQL如何使用使用Xtrabackup进行备份和恢复
2021/06/21 MySQL