nginx(Location正则匹配)

作者:百科火  更新 :2022-03-10 03:00:16   科技百科  

最佳答案Location根据类型分为两种:普通配置和正则匹配。一、 普通配置:普通location根据使用方法又分为两种。格式为:1、 location。2、location=/路径。二、 正则匹配:正则匹配也分为两种。1、 location~URI。2、location~* URI。

nginx(Location正则匹配)

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)

旻怎么读,“旻”这个字的读音是(mín),“旻”这个字属于上下结构的形声字,“旻”这个字的词性为名词时,有着秋天...

李宗瑞继母梁婖婷本人照片,长得好看却被继子并怀孕

李宗瑞继母梁婖婷本人照片,长得好看却被继子并怀孕

当年李宗瑞案绝对是最轰动的时间,不仅出现月事妹这种特殊存在,还有一个特殊人物就是李宗瑞继母梁婖婷,当然你只看到文...

如日中天打一生肖(如日中天打一生肖的答案是马)

如日中天打一生肖(如日中天打一生肖的答案是马)

如日中天打一生肖,如日中天打一生肖的答案是马。可以把如日中天理解为午时,而午时对应的就是马。十二生肖是十二地支...

河南古时候叫什么

河南古时候叫什么

河南古代叫中州。古时候,九州之中,中州是九州中最大的,也是处于九州中间的地理位置(洛阳,是周公立杆测影,建城的地方)。河...

纯碱的用途

纯碱的用途

纯碱是碳酸钠,也就是我们常说的苏打,它是一种重要的化工原料,从外形看它是一种白色粉沫,用高温水可以分解,它的液体呈碱...

考电动车驾驶证要多少钱(办理电动车驾驶证需要费用)

考电动车驾驶证要多少钱(办理电动车驾驶证需要费用)

电动车考试费用整体在300元左右,包括了培训费,考试费,工本费等。如果车主自己会驾驶,那么可以不用参加培训班,直接去考...

一美刀等于多少人民币

一美刀等于多少人民币

一刀就是一美元,美元就是刀。和人民币的汇率是浮动的。目前汇率为1刀=6.37人民币左右。美刀是美元的别称,二战后由于...

查看更多知识百科