Nginx location(正则)

1、nginx location

location 指令的作用是根据用户请求的URI来执行不同的应用。

location使用的语法为:
location [=|~|~*|^~] uri {
  ······
}

解释

location[=||*|^~]uri{…}
指令匹配标识匹配的网站地址匹配URI后要执行的配置段

2、匹配标识说明

1.~ 匹配内容区分大小写
2.~* 匹配内容不区分的小写
3.!~ 取反
4.^~ 但多个匹配同时存在,优先匹配 ^~匹配的内容;不做正则表达式的检查 (优先处理)

3、不同uri及特殊字符组合匹配的顺序说明

顺序不用URI及特殊字符组合匹配匹配说明
1location = / {}精确匹配 /
2location ^~ /image/{匹配常规字符串,不做正则表达式匹配检查
3location ~* \.(gif|jpg|jpeg)$ {正则匹配
4location /documents/ {匹配常规字符串,如果有正则,则优先匹配正则
5location / {所有location 都不能匹配后的默认匹配

4、示例

测试代码

#location / {
#	 root   html;
#    autoindex on;
#    index  index.html index.htm;
#}

location / {
        return 401;
}
location = / {
        return 402;
}
location /documents/ {
        return 403;
}
location ^~ /images/ {
        return 404;
}
location ~* \.(gif|jpg|jpeg)$ {
        return 500;
}

访问测试

[root@www conf]# curl -I -w "%{http_code}\n" -o /dev/null -s 192.168.150.12/docuements
401
[root@www conf]# curl -I -w "%{http_code}\n" -o /dev/null -s 192.168.150.12
402
[root@www conf]# curl -I -w "%{http_code}\n" -o /dev/null -s http://192.168.150.12/documents/
403
[root@www conf]# curl -I -w "%{http_code}\n" -o /dev/null -s 192.168.150.12/images/a.jpg
404
[root@www conf]# curl -I -w "%{http_code}\n" -o /dev/null -s 192.168.150.12/docuements/abc.jpg
500
  • 6
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值