首页 > 代码库 > nginx location配置
nginx location配置
nginx location配置
location在nginx中起着重要作用,对nginx接收到的请求字符串进行处理,如地址定向、数据缓存、应答控制、代理转发等
location语法
location [=|~|~*|^~] uri {
...
}
[]部分是匹配类型,可以没有,其中各项含义:
(1)= 精准匹配,请求字符串必须和uri完全相同时匹配成功
(2)~ 区分大小写的正则匹配
(3)~* 不区分大小写的正则匹配
(4)^~ 注意这个不是正则匹配,表示uri以普通字符串开头,
(5)空 表示uri以普通字符串开头,和上条意义相同,只是匹配顺序有区别
匹配类型
(1)普通匹配(没有[]部分,或者指定 ^~)
(2)精准匹配(=)
(3)正则匹配(~或者~*)
例如:
location = / {
#精确匹配 / ,主机名后面不能带任何字符串
...
}
location / {
#普通匹配,因为所有的地址都以 / 开头,所以这条规则将匹配到所有请求
...
}
location ~* \.(gif|jpg|jpeg)$ {
#正则匹配,此条规则匹配uri是否以 .gif 或 .jpg 或 .jpeg 结尾,不区分大小写
...
}
多个location的优先级
(1)找精准匹配,找到就停止继续匹配,执行此location
(2)验证各条普通匹配规则,是否有 ^~ 开头匹配成功的,有,停止继续匹配,执行此location,否,记下匹配度最高的那条
location语法
location [=|~|~*|^~] uri {
...
}
[]部分是匹配类型,可以没有,其中各项含义:
(1)= 精准匹配,请求字符串必须和uri完全相同时匹配成功
(2)~ 区分大小写的正则匹配
(3)~* 不区分大小写的正则匹配
(4)^~ 注意这个不是正则匹配,表示uri以普通字符串开头,
(5)空 表示uri以普通字符串开头,和上条意义相同,只是匹配顺序有区别
匹配类型
(1)普通匹配(没有[]部分,或者指定 ^~)
(2)精准匹配(=)
(3)正则匹配(~或者~*)
例如:
location = / {
#精确匹配 / ,主机名后面不能带任何字符串
...
}
location / {
#普通匹配,因为所有的地址都以 / 开头,所以这条规则将匹配到所有请求
...
}
location ~* \.(gif|jpg|jpeg)$ {
#正则匹配,此条规则匹配uri是否以 .gif 或 .jpg 或 .jpeg 结尾,不区分大小写
...
}
多个location的优先级
(1)找精准匹配,找到就停止继续匹配,执行此location
(2)验证各条普通匹配规则,是否有 ^~ 开头匹配成功的,有,停止继续匹配,执行此location,否,记下匹配度最高的那条
(3)按顺序验证各条正则匹配规则,有匹配的,停止继续匹配,执行此location,否则执行普通匹配规则中匹配度最高的那条
nginx location配置
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。