php实现cc攻击防御和防止快速刷新页面示例


Posted in PHP onFebruary 13, 2014
<?php
//代理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;
}
?>
PHP 相关文章推荐
PHP 5.3 下载时 VC9、VC6、Thread Safe、Non Thread Safe的区别分析
Mar 28 PHP
PHP file_exists问题杂谈
May 07 PHP
查找php配置文件php.ini所在路径的二种方法
May 26 PHP
CI框架自动加载session出现报错的解决办法
Jun 17 PHP
php禁止直接从浏览器输入地址访问.php文件的方法
Nov 04 PHP
ThinkPHP实现支付宝接口功能实例
Dec 02 PHP
php遍历树的常用方法汇总
Jun 18 PHP
Yii中创建自己的Widget实例
Jan 05 PHP
php实现的xml操作类
Jan 15 PHP
PHP入门教程之操作符与控制结构流程详解
Sep 09 PHP
PHP空值检测函数与方法汇总
Nov 19 PHP
PHP实现的超长文本分页显示功能示例
Jun 04 PHP
php中hashtable实现示例分享
Feb 13 #PHP
php实现下载限制速度示例分享
Feb 13 #PHP
php解压文件代码实现php在线解压
Feb 13 #PHP
显示youtube视频缩略图和Vimeo视频缩略图代码分享
Feb 13 #PHP
codeigniter教程之上传视频并使用ffmpeg转flv示例
Feb 13 #PHP
使用swoole扩展php websocket示例
Feb 13 #PHP
php实现图片添加水印功能
Feb 13 #PHP
You might like
1.PHP简介
2006/10/09 PHP
PHP中的Trait 特性及作用
2016/04/03 PHP
在Ubuntu 18.04上安装PHP 7.3 7.2和7.0的方法
2019/04/09 PHP
Javascript 获取链接(url)参数的方法[正则与截取字符串]
2010/02/09 Javascript
封装的原生javascript弹出层代码
2010/09/24 Javascript
让元素在网页中可拖动示例代码
2013/08/13 Javascript
JQuery页面图片切换和新闻列表滚动效果的具体实现
2013/09/26 Javascript
jQuery向上遍历DOM树之parents(),parent(),closest()之间的区别
2013/12/02 Javascript
JS window对象的top、parent、opener含义介绍
2013/12/03 Javascript
js实现透明度渐变效果的方法
2015/04/10 Javascript
用js编写的简单的计算器代码程序
2015/08/04 Javascript
JS前向后瞻正则表达式定义与用法示例
2016/12/27 Javascript
Bootstrap select下拉联动(jQuery cxselect)
2017/01/04 Javascript
微信公众号菜单配置微信小程序实例详解
2017/03/31 Javascript
vue 项目常用加载器及配置详解
2018/01/22 Javascript
angularJs中$http获取后台数据的实例讲解
2018/08/08 Javascript
深入理解JavaScript的值传递和引用传递
2018/10/24 Javascript
vue踩坑记-在项目中安装依赖模块npm install报错
2019/04/02 Javascript
详解Vue 匿名、具名和作用域插槽的使用方法
2019/04/22 Javascript
开发中常用的25个JavaScript单行代码(小结)
2019/06/28 Javascript
[46:20]TFT vs Secret Supermajor小组赛C组 BO3 第二场 6.3
2018/06/04 DOTA
Python存取XML的常见方法实例分析
2017/03/21 Python
python 简单搭建阻塞式单进程,多进程,多线程服务的实例
2017/11/01 Python
基于随机梯度下降的矩阵分解推荐算法(python)
2018/08/31 Python
在 Pycharm 安装使用black的方法详解
2020/04/02 Python
基于Pyinstaller打包Python程序并压缩文件大小
2020/05/28 Python
容易被忽略的Python内置类型
2020/09/03 Python
python 代码运行时间获取方式详解
2020/09/18 Python
Python猫眼电影最近上映的电影票房信息
2020/09/18 Python
西班牙品牌鞋子、服装和配饰在线商店:Esdemarca
2021/02/17 全球购物
应聘文员自荐信范文
2014/03/11 职场文书
校园广播稿精选
2014/10/01 职场文书
总经理检讨书范文
2015/02/16 职场文书
朋友聚会祝酒词
2015/08/10 职场文书
高中语文教材(文学文化常识大全一)
2019/08/13 职场文书
关于SpringBoot 使用 Redis 分布式锁解决并发问题
2021/11/17 Redis