码迷,mamicode.com
首页 > 其他好文 > 详细

nginx 相关

时间:2019-07-17 18:46:13      阅读:76      评论:0      收藏:0      [点我收藏+]

标签:amp   判断   www   class   style   proxy   ret   模拟   bre   

模拟if多重判断

背景:因为有人恶意刷我们一个链接,拒掉这些访问

伪代码如下:

if ( $request ~ "/credit-user/reg-get-code"  && $http_user_agent ~ okhttp ) { 
rewrite
^/(.*)$ https://www.iteblog.com/$1 permanent;
#return 403;
   }

但可惜nginx并不支持这种写法,只好用下面这种写法进行多重判断,经测试可用。

    location / {
        proxy_pass  http://127.0.0.1:8080;
        set $flag 0;
        if ( $request ~ "/credit-user/reg-get-code"  ) {
             set $flag "${flag}1";
           }
        if ( $http_user_agent ~ okhttp ) {
             set $flag "${flag}2";
           }
        if ( $flag = "012" ) {
            return 403;
        }
      
}

验证结果:

技术图片

 

 

 

域名重定向

比如访问  http://***.com/abc/api/jd/id=1  指向 http://***.com/api/jd/id=1 

location ~^/abc/ {
        rewrite /abc/(.*) /$1 break;
  }

 

nginx 相关

标签:amp   判断   www   class   style   proxy   ret   模拟   bre   

原文地址:https://www.cnblogs.com/abkn/p/10919341.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!