·设为首页收藏本站📧邮箱修改🎁免费下载专区💎积分✅卡密📒收藏夹👽聊天室
返回列表 发布新帖

分享一个限制用户每分钟访问网站频率函数

91 3
发表于 4 小时前 | 查看全部 阅读模式

马上注册,免费下载更多dz插件网资源。

您需要 登录 才可以下载或查看,没有账号?立即注册

×
  1. function check_ip_frequency($limit = 5, $time_frame = 60) {    // 获取用户的 IP 地址    $user_ip = $_SERVER['REMOTE_ADDR'];    $cookie_name = 'ip_access_times_' . md5($user_ip); // 使用 IP 地址生成唯一的 Cookie 名称    // 获取当前时间    $current_time = time();    // 检查 Cookie 是否存在    if (isset($_COOKIE[$cookie_name])) {        // 解码 Cookie 中的访问时间数组        $access_times = json_decode($_COOKIE[$cookie_name], true);    } else {        $access_times = []; // 初始化访问时间数组    }    // 清理过期的访问记录    $access_times = array_filter($access_times, function($time) use ($current_time, $time_frame) {        return ($current_time - $time) < $time_frame;    });    // 添加当前访问时间    $access_times[] = $current_time;    // 检查访问次数是否超过限制    if (count($access_times) > $limit) {        header("HTTP/1.1 404 Not Found");        exit; // 终止脚本执行    }    // 更新 Cookie,设置过期时间为 $time_frame 秒    setcookie($cookie_name, json_encode($access_times), $current_time + $time_frame, "/");}// 使用示例check_ip_frequency(5, 60); // 限制每分钟最多访问 5 次
复制代码
也可以用session来记录更安全
我要说一句 收起回复
创宇盾启航版免费网站防御网站加速服务

评论3

浅生Lv.8 发表于 4 小时前 | 查看全部
用_COOKIE就是掩耳盗铃,爬虫不影响
我要说一句 收起回复
浅生Lv.8 发表于 4 小时前 | 查看全部
单ip 并发限制一下
我要说一句 收起回复
CrystαlLv.8 发表于 4 小时前 | 查看全部
限制ip访问频率就行
我要说一句 收起回复

回复

 懒得打字嘛,点击右侧快捷回复【查看最新发布】   【应用商城享更多资源】
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

创宇盾启航版免费网站防御网站加速服务
投诉/建议联系

discuzaddons@vip.qq.com

未经授权禁止转载,复制和建立镜像,
如有违反,按照公告处理!!!
  • 联系QQ客服
  • 添加微信客服

联系DZ插件网微信客服|最近更新|Archiver|手机版|小黑屋|DZ插件网! ( 鄂ICP备20010621号-1 )|网站地图 知道创宇云防御

您的IP:3.144.6.85,GMT+8, 2025-1-13 11:45 , Processed in 0.249556 second(s), 95 queries , Gzip On, Redis On.

Powered by Discuz! X5.0 Licensed

© 2001-2025 Discuz! Team.

关灯 在本版发帖
扫一扫添加微信客服
QQ客服返回顶部
快速回复 返回顶部 返回列表