位置: IT常识 - 正文

nginx location 正则匹配

编辑:rootadmin

nginx的location正则匹配是什么呢?不知道的小伙伴来看看小编今天的分享吧!
613/auto1686643643nginx location 正则匹配

Location根据类型分为两种:普通配置和正则匹配

一、 普通配置

普通location根据使用方法又分为两种,格式如下:

1. location / {

命令序列

}

解释:括号中定义的表示对当前路径及子路径下的所有对象有效。“优先级最低”

用户所有的请求都能被它匹配到。

例子:

location / {

root /web;

相应策略

}

这说明网页根目录在/web

访问的时候直接http://127.0.0.1或是域名就可以了

用户所有的请求都能被它匹配到

location /bbs {

root "/web";

相应策略

}

这就说明网页根目录是位于 /web/bbs

访问的时候直接http://127.0.0.1/bbs就可以了

当用户访问

http://127.0.0.1/bbs/

或是

http://127.0.0.1/bbs/子路径

的时候才能被上边的路径匹配到。

问题:当用户访问http://127.0.0.1/bbs/a.html时

这两段location 同时存在时如下,那么哪段配置会生效呢?

server {

listen 80;

server_name www.benet.com;

index index.html;

location / {

root /web;

}

location /bbs {

root /web;

}

结论就是,

当用户请求的(/bbs)url同时匹配到两段location时,

最大前缀生效(location /bbs生效)

如果没有这段(location /bbs) 第一段生效。

第一段相当于默认策略,因为location / 包含所有的请求,所有的请求都是以 ”/” 开始的

2. location = /路径 {

命令序列

}

解释:括号中定义的表示对当前路径有效,子路径不生效(精确匹配指定的路径不包括子路径)。“它的优先级最高。”

例子:

location = /prefix {

}

也就是用户访问www.benet.com/prefix能被上边的location匹配到,它只匹配"/prefix",

"/"下的子路不匹配。

用户访问www.benet.com/prefix/a 就不能被它匹配到

优先级最高:指的是一旦匹配到此location ,立即生效。其它location无论是否匹配到请求都不生效。

例子:

location /prefix/ {

root /;

}

location = /prefix/ {

return 500;

}

二、 正则匹配

正则匹配也分为两种:

1. location ~ URI {}

~匹配的文件是区分字符 大小写的

2.location ~* URI {} :

~*匹配的文件是不区分字符大小的

正则匹配是按照正则location编写的顺序生效的,一旦匹配成功即停止匹配到后续的location。

例子:

location ~ /bbs {

return 400;

}

location ~* /bbs {

return 500;

}

网页返回错误信息400

然后将两段配置调换一下位置

location ~* /bbs {

return 500;

}

location ~ /bbs {

return 400;

}

三、匹配顺序和生效顺序

匹配顺序和生效顺序是两个概念

当配置中出现多个locaton并且普通和正则都有,那么

1、匹配顺序是:

用户请求的URL

(1)先匹配普通location

普通location在匹配是按照编辑顺序匹配

(2)在匹配正则location

正则location在匹配时按照编辑顺序匹配

但是正则和普通locaiton不按照编辑顺序匹配

2、生效顺序

当普通和正则都存在的情况下,遵循以下原则

1.nginx开始按照编辑顺序依次匹配普通location

(1)如果匹配过程中匹配到了

"location =" :nginx会立即生效即停止后续的匹配

(2)如果没有"locaiton ="话,

如果匹配到"locatin ^~"。会停止后续的正则匹配

然后最大前缀locaiton生效

最后是location / 生效

(3) 如果以上两种location都不存在的话

nginx会匹配所有location后看后续有没有正则locaion

如果后续没有正则locaiton

然后最大前缀locaiton生效

最后是location / 生效

如果后续还有正则location

一旦匹配成功一条正则locaion,这条会生效,并且会停止后续的正则匹配,还会会覆盖前边的普通location结果

以上就是小编今天的分享了,希望可以帮助到大家。

本文链接地址:https://www.jiuchutong.com/zhishi/2769.html 转载请保留说明!

上一篇:php获取当前时间(php获取当前时间的函数)

下一篇:ppt布尔运算工具在哪里(ppt布尔运算工具在哪里2007)

  • 芒果tv夜间模式怎么关

    芒果tv夜间模式怎么关

  • apple pencil二代怎么用(Apple pencil二代怎么开机)

    apple pencil二代怎么用(Apple pencil二代怎么开机)

  • nova5Pro相机怎么调(nova5pro拍照如何)

    nova5Pro相机怎么调(nova5pro拍照如何)

  • 华为p40怎么设置门禁卡(华为p40怎么设置无线充电功能)

    华为p40怎么设置门禁卡(华为p40怎么设置无线充电功能)

  • m2固态和sata固态能一起用吗(m2固态硬盘和sata固态哪个好)

    m2固态和sata固态能一起用吗(m2固态硬盘和sata固态哪个好)

  • ntfs格式伤u盘吗(ntfs伤u盘真的吗)

    ntfs格式伤u盘吗(ntfs伤u盘真的吗)

  • 系统boot是什么意思啊(系统boot盘)

    系统boot是什么意思啊(系统boot盘)

  • 荣耀x10什么时候发行(荣耀X10什么时候可以升级鸿蒙3.0正式版)

    荣耀x10什么时候发行(荣耀X10什么时候可以升级鸿蒙3.0正式版)

  • 电话被对方拉黑了发信息对方能看到吗(电话被对方拉黑了发短信对方能收到吗)

    电话被对方拉黑了发信息对方能看到吗(电话被对方拉黑了发短信对方能收到吗)

  • 快充跟数据线有关系吗(快充跟数据线有关系吗知乎)

    快充跟数据线有关系吗(快充跟数据线有关系吗知乎)

  • ps运行卡顿是什么原因(ps运行太卡了)

    ps运行卡顿是什么原因(ps运行太卡了)

  • 手提电脑死机按什么键恢复(手提电脑死机后开不了机)

    手提电脑死机按什么键恢复(手提电脑死机后开不了机)

  • 刚买的qq号挂常用ip要多久(买来的qq号挂多久才安全)

    刚买的qq号挂常用ip要多久(买来的qq号挂多久才安全)

  • 微机系统三种总线(微机系统三种总线结构)

    微机系统三种总线(微机系统三种总线结构)

  • 如何把视频下载到u盘里面(如何把视频下载到手机相册)

    如何把视频下载到u盘里面(如何把视频下载到手机相册)

  • 手机磁盘空间不足怎么清理(手机磁盘空间不足怎么清理苹果)

    手机磁盘空间不足怎么清理(手机磁盘空间不足怎么清理苹果)

  • 手机有存储卡为什么音乐没有了(手机有存储卡为什么空间没扩大)

    手机有存储卡为什么音乐没有了(手机有存储卡为什么空间没扩大)

  • 水墨屏真的不伤眼睛吗(水墨屏的好处)

    水墨屏真的不伤眼睛吗(水墨屏的好处)

  • 荣耀手环4怎么打电话(荣耀手环4怎么添加门禁卡)

    荣耀手环4怎么打电话(荣耀手环4怎么添加门禁卡)

  • 微信接收新消息通知打不开(微信接收新消息通知)

    微信接收新消息通知打不开(微信接收新消息通知)

  • k480键盘使用说明(k480键盘怎么连接电脑)

    k480键盘使用说明(k480键盘怎么连接电脑)

  • 抖音上写字怎么写(抖音上写字怎么移动)

    抖音上写字怎么写(抖音上写字怎么移动)

  • 使用python进行傅里叶FFT 频谱分析(python进行傅立叶变换)

    使用python进行傅里叶FFT 频谱分析(python进行傅立叶变换)

  • Repvgg详解及其实现(pytorch)(rep p)

    Repvgg详解及其实现(pytorch)(rep p)

  • 企业所得税的会计利润计算公式
  • 小规模纳税人可以收专票吗
  • 增值税普通发票和电子普通发票的区别
  • 什么是调账的依据
  • 纸质发票红冲操作流程
  • 应交增值税和应交税费
  • 小规模纳税人报销会计分录
  • 个税速算扣除数是怎么计算出来的
  • 认购私募股权基金
  • 通行费进项抵扣条件
  • 企业给员工缴纳的五险最低交多少
  • 未结清全额是逾期吗
  • 公司买的设备
  • 取得投资收益会导致经营现金流量小于
  • 增值税专票给客户的是第几联
  • 房产税应当计入什么科目
  • 哪些政府补助可以做收入
  • 长期待摊费用当月减少当月摊销吗
  • 滴滴行程单修改后是否能查
  • 房产税征收范围包括商铺吗
  • 电子钥匙到期怎么办
  • 一般纳税人交的增值税可以抵扣吗
  • 承兑汇票属于现金支付吗
  • 实收资本的账务处理例题
  • 房租租赁公司,对方还没付租金,怎么挂帐
  • 员工垫付款怎么做分录
  • 上期有留抵进项税额会计分录
  • 苹果屏幕刷新率120hz的机型
  • 电脑医生怎么卸载
  • 图解在OS X中管理窗口大小的多种方法
  • 没收到windows11更新
  • linux的用法
  • 重命名电脑名称有什么用
  • mac如何修改
  • 在公司发明的东西专利权归谁
  • 对公账户转到私人账户要手续费吗
  • 销售货款未收回应该从工资中扣除吗
  • php require的用法
  • ieview.exe 是什么
  • vue修改打包后静态资源路径的修改
  • php实现功能
  • vue3 计算属性
  • php实现文件上传需要使用哪个全局变量
  • 前端html模板
  • typescripte
  • nodejs安装及环境配置vue
  • bzip2命令压缩后无法保存原文件
  • cpu power management设置
  • 售后租回怎么理解
  • 勾选平台发票下载
  • Ficstar Software � Web Data Extraction Tools
  • mysql内连接查询使用汉语作为官方语言的所有国家
  • 帝国cms建站实例教程
  • 小规模纳税人如何申报增值税
  • 终止经营损益列报 举例
  • 投标报名费怎么做分录
  • 不动产作价出资入股登记收件
  • mysql创建数据库的操作步骤
  • 合伙企业可以退出吗
  • 固定资产核销是资产损失吗
  • 应交税费的进项和销项是什么意思
  • 应付账款入账金额可以包括哪些内容?
  • 小规模纳税人开票限额是多少
  • 公司注销其他应收款余额要交税吗
  • 建筑劳务公司的账务处理流程
  • 没有认证的进项发票可以做成本吗
  • MySQL5.7中 performance和sys schema中的监控参数解释(推荐)
  • mysql批量添加字段
  • centos php apache
  • fedora iso
  • windows任务
  • 在linux系统中
  • 正在进行设备安装 win10安装打印机
  • 简介怎么写
  • html概念及作用
  • koa2 koa
  • 又一枚精彩的弹幕效果jQuery实现
  • 深入理解新发展理念,推进供给侧结构性改革 心得体会
  • 甘肃国家税务局官网app
  • 税务关系转移社保怎么办理
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设