php防止CC网面快速刷新的方法
墨初 编程开发 405阅读
下面是在网上收集的一个利用php脚本来防止网页被CC快速刷新的方法,代码做了一个简单的测试,效果还是可以的,各位可以放到自己的服务器上测试一下。
php防CC网页攻击的代码
示例代码:
//如果是代理的IP,则直接退出 empty($_SERVER['HTTP_VIA']) or exit('Access Denied'); //防止快速刷新 session_start(); $seconds = '3'; //时间段[秒] $refresh = '5'; //刷新次数 //设置监控变量 $cur_time = time(); if(isset($_SESSION['last_time'])){ $_SESSION['refresh_times'] += 1; }else{ $_SESSION['refresh_times'] = 1; $_SESSION['last_time'] = $cur_time; } //处理监控结果 if($cur_time - $_SESSION['last_time'] < $seconds){ if($_SESSION['refresh_times'] >= $refresh){ //跳转至攻击者服务器地址 header(sprintf('Location:%s', 'http://127.0.0.1')); exit('Access Denied'); } }else{ $_SESSION['refresh_times'] = 0; $_SESSION['last_time'] = $cur_time; }
将上面的代码放到自己的服务器上进行测试即可,如果有人快速的刷新网页则会将网址跳转到攻击者的本地IP中。