天空小小岛技术网站
标题:
Nginx中if条件的逻辑与和逻辑或实现多重条件判断的方法
[打印本页]
作者:
一粒米
时间:
2013-11-29 14:51
标题:
Nginx中if条件的逻辑与和逻辑或实现多重条件判断的方法
Nginx的配置中不支持if条件的逻辑与逻辑或运算,并且不支持if的嵌套语法,我们可以用变量的方式来实现
首先以下是伪代码(即
Nginx不支持的写法
),写在这里只是为了方便理解
if ($remote_addr ~ "^(12.34|56.78)" && $http_user_agent ~* "spider") {
return 403;
}
复制代码
以下是可用的配置
set $flag 0;
if ($remote_addr ~ "^(12.34|56.78)") {
set $flag "${flag}1";
}
if ($http_user_agent ~* "spider") {
set $flag "${flag}2";
}
if ($flag = "012") {
return 403;
}
复制代码
逻辑或 更简单一点,试着写一下吧。
欢迎光临 天空小小岛技术网站 (http://tkxxd.net/)
Powered by Discuz! X3.1