实际应用中,Nginx的斜杠会根据不同的代理地址,代理规则有所不同

第一种,只有域名+端口的方式

server {listen 443 ssl;location /app/ {proxy_pass http://server1:8191;}
}
--这两种匹配对/app/v1这个路径等效
server {listen 443 ssl;location /app {proxy_pass http://server1:8191;}
}

访问路径 http://nginx-server:80/app/v1

实际的代理路径为http://server1:8191/app/v1,直接理解为与location后面的匹配地址无关,直接就是proxy_pass 主机:端口+访问路径,此处访问路径为/app/v1

第二种,域名+端口+"/",后面再没有其他

--A类匹配
server {listen 443 ssl;location /app/ {proxy_pass http://server1:8191/;}
}--B类匹配
server {listen 443 ssl;location /app {proxy_pass http://server1:8191/;}
}

访问路径 http://nginx-server:80/app/v1

对A类匹配实际的代理路径为http://server1:8191/v1,直接理解为取掉location后面的匹配/app/,剩余路径直接添加到后面,就是proxy_pass 主机:端口+访问路径,此处访问路径为/app/v1,去掉/app/剩余v1,直接添加到代理路径后面。

对B类匹配实际的代理路径为http://server1:8191//v1,直接理解为取掉location后面的匹配/app,剩余路径直接添加到后面,就是proxy_pass 主机:端口+访问路径,此处访问路径为/app/v1,去掉/app剩余/v1,直接添加到代理路径后面。

第三种,域名+端口+路径

-- A
server {listen 443 ssl;location /app/ {proxy_pass http://server1:8191/app/v2;}
}-- B
server {listen 443 ssl;location /app {proxy_pass http://server1:8191/app/v2;}
}

访问路径 http://nginx-server:80/app/v1

A的匹配实际的代理路径为http://server1:8191/app/v2v1,直接理解为取掉location后面的匹配/app/,剩余路径直接添加到后面,就是proxy_pass 主机:端口+访问路径,此处访问路径为/app/v1,去掉/app/剩余v1,直接添加到代理路径后面。

B的匹配实际的代理路径为http://server1:8191/app/v2/v1,直接理解为取掉location后面的匹配/app,剩余路径直接添加到后面,就是proxy_pass 主机:端口+访问路径,此处访问路径为/app/v1,去掉/app剩余/v1,直接添加到代理路径后面。

总结

proxy_pass 主机+端口这种类型,后将访问地址直接加到后面即主机+端口+访问路径

proxy_pass 主机+端口+访问路径(包括根路径),需要去掉location后面的匹配路径,然后将剩余的添加到proxy_pass后面

nginx 反向代理proxy_pass 后加斜杠和不加斜杆的区别相关推荐

  1. nginx反向代理(proxy_pass)tomcat的过程中,session失效的问题解决

    nginx反向代理(proxy_pass)tomcat的过程中,session失效的问题解决 参考文章: (1)nginx反向代理(proxy_pass)tomcat的过程中,session失效的问题 ...

  2. Nginx反向代理proxy_pass

    一.概述 代理(proxy),即中间人,它代替客户端发送请求给服务器,收到响应后再转给客户端.通常意义上的代理是从用户的角度讲的,用户通过某个代理可以访问多个网站,这个代理是靠近用户的,比如某些公司可 ...

  3. nginx反向代理 proxy_pass

    当proxy_pass后加 / 时,location url不会追加到反向代理的路径后面 不加 / 时,会把url追加到反向代理的路径后面 proxy_pass http:192.168.18.100 ...

  4. Nginx中proxy_pass末尾带斜杠/和不带的区别

    总结: 如果proxy_pass末尾有斜杠/,proxy_pass不拼接location的路径 如果proxy_pass末尾无斜杠/,proxy_pass会拼接location的路径 一.proxy_ ...

  5. nginx 反向代理 proxy_pass DNS 缓存问题

    咱们有个项目用 nginx 配置了反向代理, location / {proxy_pass http://d.example.com:8080; } 其中 d.example.com 是动态解析的域名 ...

  6. 容器化单页面应用中Nginx反向代理与Kubernetes部署

    在<容器化单页面应用中RESTful API的访问>一文中,我介绍了一个在容器化环境中单页面应用访问后端服务的完整案例.这里我将继续使用这个案例,介绍一下容器化单页面应用部署的另一个场景: ...

  7. Nginx反向代理——简单体验Nginx反向代理功能

    一.引言 从Nginx入门学习开始.到现在所讲的Nginx反向代理.我们的Nginx学习已经进入白热化状态,前面所学只是铺垫,真正在公司的业务场景中Nginx绝大数用来反向代理+负载均衡所用.相信大家 ...

  8. Nginx相关 解决nginx反向代理后页面上的js/css文件无法加载

    解决nginx反向代理后页面上的js/css文件无法加载 location ~ \.php$ {proxy_pass http://127.0.0.1:8000;include naproxy.con ...

  9. nginx的反向代理proxy_pass指令

    nginx的反向代理proxy_pass指令 1. 首先什么是代理服务器? 客户机发送请求时,不会直接发送到目的主机,而是先被代理服务器收到,代理服务器收到客服机的请求后,再向目的机发出,目的机就会返 ...

最新文章

  1. ASCII,Unicode和UTF-8终于找到一个能完全搞清楚的文章了
  2. exit的用法python_python 中exit,sys.exit,os._exit用法
  3. java 执行字节码_深入理解java:1.2. 字节码执行引擎
  4. 计算机键盘正确指法操作方法,“认识键盘与正确的指法输入”教案
  5. webpack 合并压缩_webpack 打包压缩js和css的方法示例
  6. oracle XDB和XPT
  7. 硬盘变成raw格式的问题的解决方法
  8. Android自定义百分数进度条
  9. 拓端tecdat|R语言在BRFSS数据中可视化分析探索糖尿病的影响因素
  10. 通达OA CRM扫描枪条码录入
  11. VScode下载安装及使用教程
  12. qq等级查询php源码,最新沉沦QQ等级代挂系源码统开源分享
  13. sql语句左连接时的ON AND用法
  14. 标识符 关键字 字面值 数据类型 进制换算 字符编码 变量 数据类型详解 运算符
  15. 在WINDOWS 10上SQL SERVER如何远程调试防火墙
  16. Whitelabel Error Page访问
  17. SiT5356:±0.1~±0.25ppm超高精度Stratum 3温补振荡器TCXO,1-60MHz
  18. 百度网盘资源怎么分享群链接下载?
  19. POI中设置单元格背景色
  20. 小技巧,不积硅步无以至千里

热门文章

  1. 基于python的国内外研究现状_国内外研究现状评述
  2. 家庭理财期末考试试卷计算机,计算机科学与技术 家庭理财管理信息系统本科学位论文.doc...
  3. Android事件分发机制详解及解决文案:史上最全面、最易懂
  4. 跟尤雨溪一起解读Vue3源码笔记- Vue Mastery
  5. h3c linux静态链路聚合,H3C 链路聚合配置
  6. QGC地面站小白安装与简单实用
  7. python爬网页上所有的链接(爬到最深)
  8. java实现13位条形码的生成
  9. 2021年山东省安全员C证考试及山东省安全员C证找解析
  10. java import javax.mail.*报错原因