源来页 公告 登陆

php防止访客F5频繁刷新页面(3次刷新)

composer @Ta
2019-09-27 21:01

<?php
//代理IP直接退出,看自己需要是否要这句,禁止代理访问
empty($_SERVER['HTTP_VIA']) or exit('Access Denied');
//防止快速刷新,在设置的时间内到达设置次数就跳转的设定的页面
$seconds = '3'; //时间段[秒]
$refresh = '3'; //刷新次数
//设置监控变量
$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;
}
?>

推荐将这段代码放到一个norefresh.php文件,然后在header.php调用。

默认设置为3秒内刷新达到3次就跳转到访客自己的本机页面,并输出拒绝访问的提示。
阅:1718 发表于2019-09-27 21:01
#php教程
评论:

返回源来页/返回首页


天合之作 曲在人意

心灵鸡汤:
      

®2019-2024 all power by Zlproject3.7
川公网安备 51192202000151号
蜀ICP备2021014921号-2 首页 #top

本网站由提供CDN加速/云储存服务

天合之作 曲在人意