Nginx 路由转发和反向代理location配置实现


Posted in Servers onNovember 11, 2021

Nginx 配置的三种方式

第一种直接替换 location 匹配部分

第二种 proxy_pass 的目标地址,默认不带 /,表示只代理域名,url 和参数部分不会变(把请求的 path 拼接到 proxy_pass 目标域名之后作为代理的URL)

第三种 proxy_pass 的目标地址后增加 /,则表示把 path 中 location 匹配成功的部分剪切掉之后再拼接到 proxy_pass 目标地址

location配置

location [ = | ~ | ~* | ^~ ] uri {...}

uri前面的方括号中的内容是可选项,解释如下:

  • "=":用于标准uri前,要求请求字符串与uri严格匹配,一旦匹配成功则停止
  • "~":用于正则uri前,并且区分大小写
  • "~*":用于正则uri前,但不区分大小写
  • "^~":用于标准uri前,要求Nginx找到标识uri和请求字符串匹配度最高的location后,立即使用此location处理请求,而不再使用location块中的正则uri和请求字符串做匹配

 

符号 含义
= 精确匹配 
^~ 非正则匹配
~ 正则匹配(区分大小写)
~* 正则匹配(不区分大小写)
!~ 正则不匹配(区分大小写)
!~* 正则不匹配(不区分大小写)
  普通匹配(这里没有符号的时候)

例子

例如下面的配置演示第三种配置方案,当我们访问 http://44.179.118.54:80/shop/xxx 的时候

访问的时候 Nginx 会把 /shop/ 截取掉然后把后面的 path 拼接到 proxy_pass 上

那么我们实际访问的就是: http://44.179.118.54:8007/xxx 这个服务

# shop-service
 # 反向代理shop-service服务
 location ^~ /shop/ {
     #proxy_redirect off;
     #proxy_connect_timeout 60;
     #proxy_read_timeout 60;
     #proxy_send_timeout 60;
     #proxy_buffer_size 4k;
     #proxy_buffers 4 32k;
     #proxy_busy_buffers_size 64k;
     #proxy_temp_file_write_size 64k;
     #proxy_max_temp_file_size 128m;
     proxy_pass http://44.179.118.54:8007/;
     #proxy_set_header X-Real-IP $remote_addr;

     #root /var/www/test/user/
     #index index.html
     #proxy_pass https://www.baidu.com;
 }

到此这篇关于Nginx 路由转发和反向代理location配置实现的文章就介绍到这了,更多相关Nginx 路由转发和反向代理内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Servers 相关文章推荐
win10安装配置nginx的过程
Mar 31 Servers
nginx搭建图片服务器的过程详解(root和alias的区别)
Mar 31 Servers
apache基于端口创建虚拟主机的示例
Apr 22 Servers
nginx请求限制配置方法
Jul 09 Servers
关于Nginx中虚拟主机的一些冷门知识小结
Mar 03 Servers
nginx刷新页面出现404解决方案(亲测有效)
Mar 18 Servers
Apache Hudi 加速传统的批处理模式
Apr 24 Servers
Windows Server 2019 域控制器安装图文教程
Apr 28 Servers
详解如何使用Nginx解决跨域问题
May 06 Servers
Win2008系统搭建DHCP服务器
Jun 25 Servers
腾讯云服务器部署前后分离项目之前端部署
Jun 28 Servers
win7配置本地ftp服务器的图文教程
Aug 05 Servers
nginx中proxy_pass各种用法详解
Apache POI的基本使用详解
nginx实现动静分离的方法示例
Nginx内网单机反向代理的实现
Nov 07 #Servers
zabbix自定义监控nginx状态实现过程
总结高并发下Nginx性能如何优化
Rhit高效可视化Nginx日志查看工具
You might like
PHP动态创建Web站点的方法
2011/08/14 PHP
通过PHP的内置函数,通过DES算法对数据加密和解密
2012/06/21 PHP
php curl 模拟登录并获取数据实例详解
2016/12/22 PHP
js 创建书签小工具之理论
2011/02/25 Javascript
Javascript模块化编程详解
2014/12/01 Javascript
js实现点击按钮后给Div图层设置随机背景颜色的方法
2015/05/06 Javascript
基于javascript实现listbox左右移动
2016/01/29 Javascript
javascript事件冒泡简单示例
2016/06/20 Javascript
Angular.JS学习之依赖注入$injector详析
2016/10/20 Javascript
浅析BootStrap中Modal(模态框)使用心得
2016/12/24 Javascript
node.js发送邮件email的方法详解
2017/01/06 Javascript
微信小程序开发之相册选择和拍照详解及实例代码
2017/02/22 Javascript
Bootstrap一款超好用的前端框架
2017/09/25 Javascript
JavaScript DOM元素常见操作详解【添加、删除、修改等】
2018/05/09 Javascript
通过JS深度判断两个对象字段相同
2019/06/14 Javascript
[51:52]Liquid vs Secret 2019国际邀请赛淘汰赛 败者组 BO3 第二场 8.24
2019/09/10 DOTA
使用python在本地电脑上快速处理数据
2017/06/22 Python
django实现登录时候输入密码错误5次锁定用户十分钟
2017/11/05 Python
python中利用zfill方法自动给数字前面补0
2018/04/10 Python
pandas读取csv文件,分隔符参数sep的实例
2018/12/12 Python
关于python之字典的嵌套,递归调用方法
2019/01/21 Python
深入学习python多线程与GIL
2019/08/26 Python
python实现递归查找某个路径下所有文件中的中文字符
2019/08/31 Python
python中前缀运算符 *和 **的用法示例详解
2020/05/28 Python
python中yield的用法详解
2021/01/13 Python
详解Python模块化编程与装饰器
2021/01/16 Python
外贸采购员求职的自我评价
2013/11/26 职场文书
网络程序员自荐信
2014/01/25 职场文书
教师自我反思材料
2014/02/14 职场文书
物理力学求职信
2014/02/18 职场文书
公安派出所所长四风问题个人对照检查材料
2014/10/04 职场文书
委托函范文
2015/01/29 职场文书
大学学生个人总结
2015/02/15 职场文书
安娜卡列尼娜观后感
2015/06/11 职场文书
python数据可视化JupyterLab实用扩展程序Mito
2021/11/20 Python
yolov5返回坐标的方法实例
2022/03/17 Python