Centos系统下载大全 | Redhat系统下载大全 | Windows2012系统下载大全 | Windows2008系统下载大全| CMS教程 | 网站地图 51运维网-专注Linux/Unix系统安全运维!
当前位置:51运维网 > 架构 > Linux架构 > 正文

理解nginx配置中的多个if的匹配规则

时间:2014-05-06 09:47 来源:网络整理 作者:51ou.com 阅读:

配置文件:
 

复制代码 代码如下:

location ~ /bb {
if ($args ~ "&_kw=[\w]+"){
       access_log logs/kw;
       access_log logs/all;
}
if ($args ~ "(&_pg=[\w]+|&_pc=[\w]+)"){
      access_log logs/pg;
      access_log logs/all;
}
if ($args ~ "&_kw=[\w]+.*(&_pg=[\w]+|&_pc=[\w]+)"){
      access_log logs/kw;
      access_log logs/pg;
      access_log logs/all;
}
access_log logs/all;
}
 

?&_kw=1777&_pg=-1&_pc=1
对于上面的配置,访问上面的url时,即匹配第一个if(因为\w为[a-zA-Z0-9_],不包含“-”,又匹配最后一个if,后面的if生效。(匹配多个if的args,后面的if生效)
验证:
 

复制代码 代码如下:

location ~ /bb {
   if ($args ~ "&_kw=[\w]+"){
       access_log logs/kw;
   }
   if ($args ~ "&_kw=[\w]+"){
       access_log logs/kw111;
   }
}
 

关于nginx location(不是多个if)的匹配规则,请参考:

感谢您对【51运维网 http://www.51ou.com/】的支持,我们为您免费提供《理解nginx配置中的多个if的匹配规则》技术文章,《理解nginx配置中的多个if的匹配规则》详细使用和说明,有时《理解nginx配置中的多个if的匹配规则》可能不完善、敬请谅解!如果《理解nginx配置中的多个if的匹配规则》有错误请给我们留言,我们将尽快修复文章错误,如果您觉得本站不错,请分享给周围的朋友!谢谢!

顶一下
(0)
0%
踩一下
(0)
0%
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
验证码:点击我更换图片