在前一篇《 WordPress防CC攻击代码 》中已经提到了一种防止WordPress被CC攻击被刷流量的方法,不过那种方法的缺点就是误封率较高,如果一个人随手刷新了几下,结果被封了,那么用户体验会不好,所以下面提供另外一种代码,主要功能是让在3秒内连续刷新页面5次以上的IP指向本机127.0.0.1,这个方法的效果会好一些。
话不多说,先贴代码:
<?php // Come form www.90blog.org session_start(); //开启session $timestamp = time(); $ll_nowtime = $timestamp ; //判断session是否存在 如果存在从session取值,如果不存在进行初始化赋值 if ($_SESSION){ $ll_lasttime = $_SESSION['ll_lasttime']; $ll_times = $_SESSION['ll_times'] + 1; $_SESSION['ll_times'] = $ll_times; }else{ $ll_lasttime = $ll_nowtime; $ll_times = 1; $_SESSION['ll_times'] = $ll_times; $_SESSION['ll_lasttime'] = $ll_lasttime; } //现在时间-开始登录时间 来进行判断 如果登录频繁 跳转 否则对session进行赋值 if(($ll_nowtime - $ll_lasttime) < 3){ if ($ll_times>=5){ header("location:http://127.0.0.1"); exit; } www.2cto.com }else{ $ll_times = 0; $_SESSION['ll_lasttime'] = $ll_nowtime; $_SESSION['ll_times'] = $ll_times; } ?> 以上代码就是改编自网上流传已广的那份错误的 PHP 代码,不过这份代码是可以运行的,不信的话狂按F5试试。当然这是我请教别人得来的,囧。。。
同样,要运用在WordPress中推荐加在header中,那样效果会好一点。另外,上面的参数可以修改,你可以按照自己意愿修改参数从而达到更好的效果
查看更多关于WordPress防CC攻击代码(续) - 网站安全 - 自学php的详细内容...