位置: 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)

  • 公司注册资金多少有什么区别

    公司注册资金多少有什么区别

  • 抖音极速版有浏览记录吗怎么查看(抖音极速版有浏览记录吗可以看别人的吗)

    抖音极速版有浏览记录吗怎么查看(抖音极速版有浏览记录吗可以看别人的吗)

  • 和家亲怎么分享监控给别人(和家亲怎么分享视频)

    和家亲怎么分享监控给别人(和家亲怎么分享视频)

  • 华为手机怎么连接电脑传输文件(华为手机怎么连苹果无线耳机)

    华为手机怎么连接电脑传输文件(华为手机怎么连苹果无线耳机)

  • 红米k30pro卡槽在哪个位置(红米k30pro卡槽在哪)

    红米k30pro卡槽在哪个位置(红米k30pro卡槽在哪)

  • 抖音去水印怎么弄(抖音去水印怎么去掉?微信小程序)

    抖音去水印怎么弄(抖音去水印怎么去掉?微信小程序)

  • 微信收款音响s1和s3有什么区别(微信收款音响s1是几G网络)

    微信收款音响s1和s3有什么区别(微信收款音响s1是几G网络)

  • 为什么qq密码改了还是密码错误(为什么qq密码改了别人还能登录王者荣耀)

    为什么qq密码改了还是密码错误(为什么qq密码改了别人还能登录王者荣耀)

  • 笔记本网卡去哪里办理(笔记本网卡去哪里换)

    笔记本网卡去哪里办理(笔记本网卡去哪里换)

  • 电脑文件夹是什么意思(电脑文件夹是什么意思10字)

    电脑文件夹是什么意思(电脑文件夹是什么意思10字)

  • 华为mate30pro微信视频没有美颜功能吗(华为mate30pro微信怎么分身)

    华为mate30pro微信视频没有美颜功能吗(华为mate30pro微信怎么分身)

  • 联发科p10等于高通什么(联发科p10相当于什么处理器)

    联发科p10等于高通什么(联发科p10相当于什么处理器)

  • 抖音号被永久封怎么注销(抖音号被永久封禁了,手机号可以重新注册吗?)

    抖音号被永久封怎么注销(抖音号被永久封禁了,手机号可以重新注册吗?)

  • 微信卸载了怎么恢复(微信卸载了怎么恢复聊天记录)

    微信卸载了怎么恢复(微信卸载了怎么恢复聊天记录)

  • 图片不能大于500k怎么办(图片不得大于500k怎么弄)

    图片不能大于500k怎么办(图片不得大于500k怎么弄)

  • wps如何替换字(wps如何替换字符)

    wps如何替换字(wps如何替换字符)

  • 三星m30s什么处理器(三星 m30s)

    三星m30s什么处理器(三星 m30s)

  • 抖音怎么解除通讯录同步(抖音怎么解除通讯录权限)

    抖音怎么解除通讯录同步(抖音怎么解除通讯录权限)

  • macoshighsierra是什么(macossierra是什么意思)

    macoshighsierra是什么(macossierra是什么意思)

  • 抖音照片切换速度怎么调(抖音照片切换速率怎么调)

    抖音照片切换速度怎么调(抖音照片切换速率怎么调)

  • vivoy81s返回键怎么改(vivoy81s返回键怎么调出来)

    vivoy81s返回键怎么改(vivoy81s返回键怎么调出来)

  • iphone7主屏支持横屏吗(iphone7屏幕可以给iphone8用吗)

    iphone7主屏支持横屏吗(iphone7屏幕可以给iphone8用吗)

  • 文件夹如何更改日期详细教程(文件夹如何更改图标)

    文件夹如何更改日期详细教程(文件夹如何更改图标)

  • win10开机强制进入安全模式黑屏解决方法(win10开机强制进入安全模式重置)

    win10开机强制进入安全模式黑屏解决方法(win10开机强制进入安全模式重置)

  • 出口退免税管理工作规范2.0
  • 差额征税如何开票备注内容应该怎么调
  • 税控盘及维护费的会计分录
  • 摊销广告费会计分录
  • 支付安全生产费怎么入账
  • 错误的累计折旧结转会计分录如何调整
  • 掌握无形资产核算方法
  • 建筑行业简易计税账务处理
  • 差额征税怎么交税
  • 少记财务费用如何记账
  • 专用发票跨年度能入账吗
  • 接受投资者的无形资产
  • 原油资源税计税方法
  • 房地产企业作为甲方开票给施工单位
  • 季度营业额超过6万需要补税
  • 对外出租设备
  • 股权转让能否低于股价
  • 企业所得税哪些不可以税前扣除
  • 端午节给员工发福利说什么
  • 年中建账损益类科目怎么录
  • 租金收入发票税目
  • 税金及附加包括地方教育费附加吗
  • 经营费用与营业收入区别
  • 无线路由器1200m覆盖范围
  • Linux下which、whereis、locate、find 区别
  • linux sed -s
  • 财务报表怎么判断盈亏
  • PHP:imagecreatefromgd2part()的用法_GD库图像处理函数
  • 今天中秋节
  • 图卷积神经网络原理
  • 增值税加计抵减申报表怎么填
  • centos配置php环境
  • 利润表用处
  • 织梦cms要钱吗
  • 平价股权转让还需要所得税吗
  • 总公司不是小微企业,分公司独立核算的
  • 帝国cms配置数据库
  • 织梦cms官网
  • 织梦logo怎么更换
  • 进项税认证抵扣流程
  • 哪些合同必须签订书面合同
  • 企业研发费用的优惠政策
  • sql server 2008登录服务器名称
  • 以前年度损益影响当期损益吗
  • 出口企业样品收入分录
  • 商贸企业增值税税负率低于1%则存在涉税问题
  • 清算中的企业能恢复吗
  • 事业单位会计的特点
  • 银行承兑的购买
  • 受托方受托代销商品会计分录
  • 把公司设备操作坏了怎么担责
  • 营改增后租金收入交什么税
  • 土地价款抵减销项税
  • 资产处置损益如何在利润表中体现
  • 季度现金流量表本期数和上期数
  • 未开票收入账上税率按多少
  • 收付实现制和权责发生制区别
  • 会计账簿的启用与登记实验报告
  • sql server数据库查询语句
  • windows取消ctrl+alt+del
  • stdin命令
  • 电脑输入systeminfo
  • 电脑系统怎么设置字体大小
  • mac文件怎么用
  • win8系统如何关机
  • win8操作
  • linux命令怎么执行
  • wind8桌面
  • 基于vue的购物系统
  • 安卓键盘软件
  • 深入理解中国式现代化
  • python微信公众号开发教程
  • javascript面向对象精要
  • 新办企业没有员工要报个人所得税吗
  • 税务局领取发票后怎么操作
  • 国税发1994 关于个人所得税
  • 泉州国税局网站首页
  • 税务总局2013年65号公告
  • 辽宁税务局代码是多少
  • 南川大观薰衣草花期
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设