Loading
0

nginx判断ip进行跳转到指定地址方法

前言:目前有一个需求,指定ip访问我网站blog.tag.gg就跳转到另一个站点,或者某个页面。可以精确到某个ip跳转,也可判断访问者ip段,比如c段b段跳转
方法:nginx配置文件获取访问者ip或段然后判断跳转。
方法一:在conf配置文件中添加如下代码,请将ip和地址改成您需要的即可,
location / {
    if ($remote_addr ~* "110.110.110.110"){
            rewrite ^(.*) https://blog.tag.gg/ break;
    }
}
方法二:针对某个ip段判断跳转,如下是判断c段,也可判断b段等。
location / {
    if ($remote_addr ~* ^110\.110\.110\.(.*?)$){
            rewrite ^(.*) https://blog.tag.gg/ break;
    }
}

方法三:屏蔽ip反馈指定错误状态码:

 location / {
if ($remote_addr ~ '110.110.110.110') {
           return 403 "Error uuid forbidden.";
      }
}


补充关于nginx的正则表达式

~ 区分大小写匹配

~* 不区分大小写匹配

!~和!~*分别为区分大小写不匹配及不区分大小写不匹配

^ 匹配的开头

$ 匹配的结尾

. * ?等需要转义

声明:站长码字很辛苦啊,转载时请保留本声明及附带文章链接:http://blog.tag.gg/showinfo-7-35780-0.html
上一篇:nginx 无法启动 错误提示nginx: [emerg] zero size shared memory zone "allips" 处理方法
下一篇:Nginx站点目录及文件URL访问控制大全