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

  • 好太太油烟机怎么样质量好吗(好太太油烟机怎么样)(好太太油烟机怎么安装)

    好太太油烟机怎么样质量好吗(好太太油烟机怎么样)(好太太油烟机怎么安装)

  • 网易云音乐怎么联系客服(网易云音乐怎么变成mp3格式)

    网易云音乐怎么联系客服(网易云音乐怎么变成mp3格式)

  • 小米手机通话自动录音怎么设置(小米手机通话自动挂断的解决方案)

    小米手机通话自动录音怎么设置(小米手机通话自动挂断的解决方案)

  • 华为Mate 40的刷新率是多少(华为mate40的刷新hz)

    华为Mate 40的刷新率是多少(华为mate40的刷新hz)

  • 小米手机有电却老关机(小米手机有电却自动关机的原因怎么办)

    小米手机有电却老关机(小米手机有电却自动关机的原因怎么办)

  • 苹果xsmax支持wifi6吗(苹果xsmax支持无线快充吗)

    苹果xsmax支持wifi6吗(苹果xsmax支持无线快充吗)

  • 怎么查看微信有没有异常(怎么查看微信有没有在电脑登录)

    怎么查看微信有没有异常(怎么查看微信有没有在电脑登录)

  • 快手直播间挂协议的后果(快手直播间挂协议能不能被官方查到)

    快手直播间挂协议的后果(快手直播间挂协议能不能被官方查到)

  • 为什么vsco登不上去(vsco为啥登录不了)

    为什么vsco登不上去(vsco为啥登录不了)

  • 不加好友怎么发文件(不加好友怎么发视频)

    不加好友怎么发文件(不加好友怎么发视频)

  • 抖音注销了是什么样子(抖音注销了是什么心态)

    抖音注销了是什么样子(抖音注销了是什么心态)

  • 抖音用自己的流量看不了为什么(抖音自己的流量在哪里看)

    抖音用自己的流量看不了为什么(抖音自己的流量在哪里看)

  • 拼多多怎么退出实名认证(拼多多怎么退出登录)

    拼多多怎么退出实名认证(拼多多怎么退出登录)

  • 苹果夜拍模式怎么设置(苹果夜拍模式怎么关)

    苹果夜拍模式怎么设置(苹果夜拍模式怎么关)

  • 移民加拿大有哪些攻略?(移民加拿大有哪些弊端和优势)

    移民加拿大有哪些攻略?(移民加拿大有哪些弊端和优势)

  • 华为p20自动锁屏在哪里设置(华为p20自动锁屏怎么解除)

    华为p20自动锁屏在哪里设置(华为p20自动锁屏怎么解除)

  • yy怎么直播游戏(yy怎么直播游戏视频教学)

    yy怎么直播游戏(yy怎么直播游戏视频教学)

  • QQ邮箱为什么收不到邮件(qq邮箱为什么收不到邮件)

    QQ邮箱为什么收不到邮件(qq邮箱为什么收不到邮件)

  • win10edge浏览器乱码解决教程(win10ie浏览器打开就崩溃)

    win10edge浏览器乱码解决教程(win10ie浏览器打开就崩溃)

  • 家里有蟑螂怎么办(家里有蟑螂怎么找到窝)

    家里有蟑螂怎么办(家里有蟑螂怎么找到窝)

  • 分享帝国CMS判断会员是否登录及登录后才能看到内容的方法(帝国cms到底好不好)

    分享帝国CMS判断会员是否登录及登录后才能看到内容的方法(帝国cms到底好不好)

  • 增值税发票税务ukey版开票流程
  • 期末有留底税额可需要进行账务处理
  • 税控盘是什么干嘛的
  • 交通事故的支出是否可以个税税前扣除
  • 账账核对的基本内容
  • 房地产开发公司排名
  • 小规模纳税人能用专票抵税吗
  • 工伤私了赔偿
  • 税务登记法人变更后多久生效
  • 工程结算与工程施工如何结转
  • 不动产可以拆吗
  • 开外管证再省外预缴税收要怎么报税?
  • 其他应付款能转收入么
  • 劳务派遣能不能预支工资
  • 公对公转账银行拒绝是什么意思
  • 没有留抵税用进项抵扣滞纳金可以吗?
  • 委托加工物资的账务处理例题
  • 以前年度亏损本季度盈利所得税
  • 特殊业务分录
  • 图书免税政策依据
  • 车船税为什么没有优惠
  • 以货换货账务怎么处理
  • 处置其他权益工具投资会影响当期损益吗
  • 电费预付之后又退回来了
  • 法人变更股权不转让有什么影响么么
  • 你肯定不知道的11个狗狗冷知识
  • 生产成本包括哪三类
  • 劳务服务包括哪些范围
  • PHP中Http协议post请求参数
  • 一次性支付一年租金怎么做账
  • 苹果手机屏幕旋转怎么设置关闭
  • Python之ImportError: DLL load failed: 找不到指定的模块解决方案
  • 前端生成pdf文件
  • fsma32.exe进程是什么文件 fsma32是什么进程
  • 公允价值变动损益在利润表哪里
  • php获取客户端唯一标识
  • 增值税附加税的税率
  • 房产置换怎么做账务处理
  • 技术服务行业增值税税税负率是多少
  • 农民专业合作社是什么性质
  • 存货非正常损失可以所得税前扣除吗
  • 认缴出资和注册资本
  • 缴纳的税费怎么计算
  • 固定资产加速折旧计算方法
  • 增值税减免附什么凭证
  • 期末留抵的进项税可以计入成本吗
  • 应收应付账款统计表
  • 无形资产的处置方式有哪些
  • 公司支付给实习生的报酬如何税前扣除?
  • 青苗赔偿管理办法
  • 普通发票采购分录
  • 代开的专票作废了怎么做账?
  • 汽车保险费能不能不交
  • 管理会计主要内容包括
  • mysql order by desc
  • mysql5.0使用教程
  • mysql开发教程
  • windows7中个性化设置
  • 老旧的诗琴五个琴谱大全
  • windows8开机启动项在哪里设置
  • linux怎么使用无线网卡
  • 空磁盘为什么有已用空间
  • win10系统如何
  • linux 压缩rar
  • FreeGLUT Tips: Resolve compile issue: error LNK1104: cannot open file 'freeglutd.lib'
  • 新浪微博随时随地
  • node.js中的http.request.end方法使用说明
  • Android AsyncTask简要分析
  • python利用format方法保留三位小数
  • scrollview用法
  • 统计一组数据各个数字出现的次数
  • javascript中对象的含义
  • jquery的用法
  • js确认框选择取消时退出程序怎么设置
  • javascript引用值
  • 皇家税务与海关署
  • 增值税和消费税申报对比不符怎么处理
  • 陈列费发票能抵扣吗
  • 广州市国税咨询电话
  • 城市维护建设税税率
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设