Nginx学习(1)

Location学习

Location写法

location [ = | ~ | ~* | ^~ ] uri { ... }
location @name { ... }

1. 没有修饰符 表示:必须以指定模式开始

Server{
  Server_name mao.com;
  Location /abc{…}
}
Mao.com/abc /abc?a=1 /abc/ /abcde 都可以进入该location

2. 有修饰符 “=” 表示:必须与指定的模式精确匹配

Server{
  Server_name mao.com;
  Location = /abc{…}
}
Mao.com/abc /abc?a=1 可以进入该location
/abc/ /abcde 不可以进入该location

3. 有修饰符 “~” 表示:指定的正则表达式要区分大小写

Server{
  Server_name mao.com;
  Location ~ ^/abc$ {…}
}
Mao.com/abc /abc?a=1 可以进入该location
/abc/ /ABC /abcde 不可以进入该location

4. 有修饰符 “~*” 表示:指定的正则表达式不区分大小写

Server{
  Server_name mao.com;
  Location ~* ^/abc$ {…}
}
Mao.com/abc /abc?a=1 /ABC 可以进入该location
/abc/ /abcde 不可以进入该location

5. 有修饰符 “^~” 表示:类似于无修饰符的行为,也是以指定模式开始,不同的是,如果模式匹配,那么久停止搜索其他模式

6. 有修饰符 “@” 表示:定义命名location区段,这些区段客户端不能访问,只可以有内部产生的请求来访问,如error-page等

查找顺序和优先级

1. 带有“=”的精确匹配优先

2. 没有修饰符的精确匹配

3. 正则表达式按照他们在配置文件中定义的顺序

4. 带有“^~”修饰符的开头匹配

5. 带有“~”或“~*”修饰符的,如果正则表达式于uri匹配

6. 没有修饰符的,如果指定字符串于uri开头匹配

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值