您现在的位置是:首页 > 程序 > php网站首页php
PHP防CC拦截代码
前几天,不知从哪冒出来的一波傻逼,总是频繁的刷我的博客,20分钟刷了20000多次,无奈之下数据库被刷爆了...
今天分享一下PHP如何防CC攻击...
前几天,不知从哪冒出来的一波傻逼,总是频繁的刷我的博客,20分钟刷了20000多次,无奈之下数据库被刷爆了...
今天分享一下PHP如何防CC攻击。
<?php
empty($_SERVER['HTTP_VIA']) or exit('Access Denied');
session_start();
$seconds = 10; //时间段[秒]
$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){
//跳转验证
$url = 'http://'.$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI'];
$msg = '<title>安全检查</title><h3>检测到CC攻击,正在进行浏览器安全检查!</h3>';
exit($msg . "<meta http-equiv='refresh' content='3;url={$url}'>"); //3是定时跳转的时间,后期可以根据时间段调整跳转时间
}
}else{
$_SESSION['refresh_times'] = 0;
$_SESSION['last_time'] = $cur_time;
}相关文章
文章评论 (0)
- 这篇文章还没有收到评论,赶紧来抢沙发吧~

