WordPress防CC攻击
分类:折腾日期:2013-12-25 - 10:03:37作者:老谢
作为一个用小内存vps的博主,博客只要被人有意的狂刷新负载就会飙升,使用wp-super-cache生成静态页面,可以有效的解决这个问题,但是会导致访问计数postviews插件失效,无法统计到访问数量,以前使用WP-PostViews和WP Super Cache冲突导致不计数的解决办法,在postviews最后一次更新后,这个办法也不能用了,搜了其他版本也没能解决这个问题,于是也懒得折腾了,使用下面一段防CC的代码就能解决狂刷新造成vps负载飙升的问题,见下面的代码复制到模板的function.php文件即可:
//防止CC攻击 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; } |
使用上面的代码后,产生大量请求的访问者将被重定向到127.0.0.1,源码来自:WordPress防CC攻击代码(续)
nginx 防护的也不错
@乐猪丶 我用的还是apache
挺实用的代码 如果ddos 得咋防呢
@儿童安全座椅 ddos全球无解。。
我用的是一个128m的
openwrt拨号弄好了,昨晚用了一晚上,很稳定
@不给力的面条 哈哈,妥妥的 Ps:低调。。低调。。。
不错的教程 膜拜ing
@保罗主机-Ricky 仰慕罗总!
http://fatesinger.com/postviews-and-super-cache.html
看看这个
@西门 有空折腾下试试
你说CC测试下还好,有些人就是恶意CC,这段代码不知道效果如何
@zwwooooo 恶意cc果断祭出iptables封ip大法
标记一下 有空再折腾
这段代码来自 http://www.90blog.org/
@极雪 感谢,已经更新源码出处
不用谢,因为我也发过一样的代码。。。。。在网上找到了原创作者
这段代码对脚本攻击无效,脚本不会带上cookie
这帖子有点过于久远