Nginx if多重判断 Nginx实现if多重判断配置方法示例

软件发布|下载排行|最新软件

当前位置:首页IT学院IT技术

Nginx if多重判断 Nginx实现if多重判断配置方法示例

  2021-03-21 我要评论
想了解Nginx实现if多重判断配置方法示例的相关内容吗,在本文为您仔细讲解Nginx if多重判断的相关知识和一些Code实例,欢迎阅读和指正,我们先划重点: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;
}

猜您喜欢

Copyright 2022 版权所有 软件发布 访问手机版

声明:所有软件和文章来自软件开发商或者作者 如有异议 请与本站联系 联系我们