灯火互联
管理员
管理员
  • 注册日期2011-07-27
  • 发帖数41778
  • QQ
  • 火币41290枚
  • 粉丝1086
  • 关注100
  • 终身成就奖
  • 最爱沙发
  • 忠实会员
  • 灌水天才奖
  • 贴图大师奖
  • 原创先锋奖
  • 特殊贡献奖
  • 宣传大使奖
  • 优秀斑竹奖
  • 社区明星
阅读:2735回复:0

WordPress防CC攻击代码(续)

楼主#
更多 发布于:2012-08-24 21:55

上一篇WordPress防CC攻击代码

 在前一篇《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;
   }
}else{
   $ll_times = 0;
   $_SESSION['ll_lasttime'] = $ll_nowtime;
   $_SESSION['ll_times'] = $ll_times;
}
?>
  以上代码就是改编自网上流传已广的那份错误的php代码,不过这份代码是可以运行的,不信的话狂按F5试试。当然这是我请教别人得来的,囧。。。

  同样,要运用在wordPress中推荐加在header中,那样效果会好一点。另外,上面的参数可以修改,你可以按照自己意愿修改参数从而达到更好的效果

喜欢0 评分0
游客

返回顶部