nginx(Location正则匹配)
作者:百科火 更新 :2022-03-10 03:00:16 科技百科

nginx的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时
这2段location 与此同时出现时如下所示,那麼哪段配备会起效呢?
server {
listen 80;
server_name www.benet.com;
index index.html;
location / {
root /web;
}
location /bbs {
root /web;
}
结果便是,
当客户请求的(/bbs)url与此同时匹配到2段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
随后将2段配备替换一下部位
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結果
以上便是我现在的共享了,期待可以作用到大伙儿。
- END -
开黄腔什么意思
大家都知道开黄腔是一个网络流行词,现在网络上有很多网络流行词,很多人会把这些网络流行词放到聊天中,那开黄腔是什么...
皮鞋码和运动鞋码相差多少
运动鞋和皮鞋都是我们日常很常见的款式,在不同的场合穿不一样的鞋子,很多人在选择尺码上面都会拿不准...
谁的死轻于鸿毛
谁的死轻于鸿毛,1、轻于鸿毛的人,指出卖和祸乱国家民族的败类,例如:庆父,赵高,秦桧,魏忠贤,汪精卫,李士群,丁默村,殷汝耕等。2...
旻怎么读(“旻”这个字的读音是(m)
旻怎么读,“旻”这个字的读音是(mín),“旻”这个字属于上下结构的形声字,“旻”这个字的词性为名词时,有着秋天...
李宗瑞继母梁婖婷本人照片,长得好看却被继子并怀孕
当年李宗瑞案绝对是最轰动的时间,不仅出现月事妹这种特殊存在,还有一个特殊人物就是李宗瑞继母梁婖婷,当然你只看到文...
如日中天打一生肖(如日中天打一生肖的答案是马)
如日中天打一生肖,如日中天打一生肖的答案是马。可以把如日中天理解为午时,而午时对应的就是马。十二生肖是十二地支...
河南古时候叫什么
河南古代叫中州。古时候,九州之中,中州是九州中最大的,也是处于九州中间的地理位置(洛阳,是周公立杆测影,建城的地方)。河...
纯碱的用途
纯碱是碳酸钠,也就是我们常说的苏打,它是一种重要的化工原料,从外形看它是一种白色粉沫,用高温水可以分解,它的液体呈碱...
考电动车驾驶证要多少钱(办理电动车驾驶证需要费用)
电动车考试费用整体在300元左右,包括了培训费,考试费,工本费等。如果车主自己会驾驶,那么可以不用参加培训班,直接去考...
一美刀等于多少人民币
一刀就是一美元,美元就是刀。和人民币的汇率是浮动的。目前汇率为1刀=6.37人民币左右。美刀是美元的别称,二战后由于...