欢迎各位兄弟 发布技术文章

这里的技术是共享的

You are here

马哥 今日小技巧 NGINX实现IF语句里的AND,OR多重判断 有大用

nginx 的配置中不支持if条件的逻辑与/逻辑或运算, 并且不支持if的嵌套语法, 我们可以用变量的方式来实现: 原理 就是用 SET 变.

set $rewriteflag 0;

if ($server_port = '80') {

    set $rewriteflag 1;

}

if ($host = 'www.aaa.com') {

    set $rewriteflag 1;

}

if ($uri ~* "^/api.*") {

    set $rewriteflag 0;

}

if ($uri ~* "^/mobile.*") {

    set $rewriteflag 0;

}

if ($uri ~* ".(js|css|html|gif|jpg|png|jpeg)$") {

    set $rewriteflag 0;

}

if ($rewriteflag = '1'){

   rewrite ^/(.*) https://www.bbb.com/$1 permanent;

   break;

}


更多历史小技巧,技术交流,岗位内推访问【马哥社区 http://club.magedu.com

普通分类: