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 相关文章推荐
nginx前后端同域名配置的方法实现
Mar 31 Servers
nginx常用命令放入shell脚本详解
Mar 31 Servers
Nginx配置SSL证书出错解决方案
Mar 31 Servers
nginx服务器的下载安装与使用详解
Aug 02 Servers
图文详解Nginx版本平滑升级方案
Sep 15 Servers
NGINX 权限控制文件预览和下载的实现原理
Jan 18 Servers
Nginx隐藏式跳转(浏览器URL跳转后保持不变)
Apr 07 Servers
Win10 Anaconda安装python-pcl
Apr 29 Servers
nginx 配置指令之location使用详解
May 25 Servers
在windows server 2012 r2中安装mysql的详细步骤
Jul 23 Servers
阿里云服务器(windows)手动部署FTP站点详细教程
Aug 05 Servers
nginx中proxy_pass各种用法详解
Apache POI的基本使用详解
nginx实现动静分离的方法示例
Nginx内网单机反向代理的实现
Nov 07 #Servers
zabbix自定义监控nginx状态实现过程
总结高并发下Nginx性能如何优化
Rhit高效可视化Nginx日志查看工具
You might like
NO3第三帝国留言簿制作过程
2006/10/09 PHP
修改PHP的memory_limit限制的方法分享
2012/02/21 PHP
php压缩和解压缩字符串的方法
2015/03/14 PHP
php中输出json对象的值(实现方法)
2018/03/07 PHP
JavaScript入门教程(5) js Screen屏幕对象
2009/01/31 Javascript
img onload事件绑定各浏览器均可执行
2012/12/19 Javascript
解析jquery获取父窗口的元素
2013/06/26 Javascript
js实现上传图片预览的方法
2015/02/09 Javascript
js实现字符串和数组之间相互转换操作
2016/01/12 Javascript
Javascript表单特效之十大常用原理性样例代码大总结
2016/07/12 Javascript
ECMAScript6快速入手攻略
2016/07/18 Javascript
Node.js 中使用 async 函数的方法
2017/11/20 Javascript
javascript高仿热血传奇游戏实现代码
2018/02/22 Javascript
安装Node.js并启动本地服务的操作教程
2018/05/12 Javascript
ztree加载完成后显示勾选节点的实现代码
2018/10/22 Javascript
mock.js实现模拟生成假数据功能示例
2019/01/15 Javascript
用Vue编写抽象组件的方法
2019/05/06 Javascript
vue-i18n结合Element-ui的配置方法
2019/05/20 Javascript
使用Eclipse如何开发python脚本
2018/04/11 Python
Flask框架WTForm表单用法示例
2018/07/20 Python
Python后台管理员管理前台会员信息的讲解
2019/01/28 Python
python顺序执行多个py文件的方法
2019/06/29 Python
python列表,字典,元组简单用法示例
2019/07/11 Python
python树的同构学习笔记
2019/09/14 Python
Python爬虫之Selenium实现窗口截图
2020/12/04 Python
Python创建简单的神经网络实例讲解
2021/01/04 Python
澳大利亚家具和家居用品在线商店:Interiors Online
2018/03/05 全球购物
家庭睡衣和家庭用品:Little Blue House
2018/03/18 全球购物
港湾网络笔试题
2014/04/19 面试题
文秘专业个人求职信
2013/12/22 职场文书
2014年公司庆元旦活动方案
2014/03/05 职场文书
软件工程毕业生自荐信
2014/07/04 职场文书
2014年帮扶工作总结
2014/11/26 职场文书
电影焦裕禄观后感
2015/06/09 职场文书
大学学生会主席竞选稿
2015/11/19 职场文书
pytorch 如何使用batch训练lstm网络
2021/05/28 Python