阿里云购买域名步骤_PHP限制访问频率,简易防止CC攻击

  发布时间:2026-10-25 02:36:54   作者:玩站小弟   我要评论
介绍:由于自己使用API常常被屡次请求,还偶然被CC攻击,找到一套防止非正常高频率请求和防止一般CC攻击的PHP源码。优势:简易易用,无论你懂不懂PHP开发,只要会拷贝粘贴就行。 Mem 阿里云购买域名步骤。

介绍:

由于自己使用API常常被屡次请求,制访止还偶然被CC攻击,问频找到一套防止非正常高频率请求和防止一般CC攻击的率简PHP源码。

优势:

简易易用,易防无论你懂不懂PHP开发,制访止阿里云购买域名步骤只要会拷贝粘贴就行。问频阿里云域名控制台在哪 Memcached内存缓存技术,率简高效能,易防高并发。制访止 精准无误,问频0误封。率简 能防护QPS10000以内的易防CC攻击,看机器配置,制访止阿里云域名控制台怎么打开有可能更高。问频 支撑范围较广,率简直接你网站支撑PHP就行。 源码简易,阿里云域名控制台登录可自行修订,可以套自己喜爱的前端模板主题。

要求:

PHP版本 ≥ 7.2 PHP需装配Memcached扩展 Memcached ≥1.6

使用方法:

以下开源代码添加到你网站核心文件中,相当于你网站任何页面都会援引的阿里云域名控制台登录入口官网一个文件。类似于:config.php

或者根据你的程序秩序添加到需要防CC的PHP文件头部即可。

源码:

<?php /** * 防止屡次请求,防范CC攻击,支撑上万并发 * 独创作者:小伟 * 转载请留存版权,谢谢! */ ini_set("display_errors", "Off"); error_reporting(E_ALL ^ E_NOTICE ^ E_WARNING); extension_loaded(memcached) or die(memcached扩展未装配!); $logPath = $_SERVER[DOCUMENT_ROOT] . /waf/waf.log; //日志记载文件留存路径,$_SERVER[DOCUMENT_ROOT]是网站根目录 $fileht = $_SERVER[DOCUMENT_ROOT] . /waf/ban.log; //被拉黑IP记载文件留存路径 if (!file_exists($logPath)) { @mkdir($_SERVER[DOCUMENT_ROOT] . /waf/, 0777, true); @file_put_contents($logPath, ); @file_put_contents($fileht, ); } $allowtime = 2; //防刷新时间(秒) $allownum = 5; //防刷新次数(比如2秒5次,超过就警告) $allowRefresh = 10; //在此警告次数之后拉黑IP $bantime = 600; //封禁时间,超时自动解封(秒) $ip = $_SERVER[HTTP_X_FORWARDED_FOR] ? $_SERVER[HTTP_X_FORWARDED_FOR] : $_SERVER[REMOTE_ADDR]; $uri = $_SERVER[PHP_SELF]; $cache = new Memcached(); $cache->addServer(127.0.0.1, 11211) or die(memcached连接失利!); $inban = $cache->get(waf-ban- . $ip); if ($inban) { header("HTTP/1.1 403 Forbidden"); exit(<h1>403 Forbidden 非法访问</h1> <p>你的请求似乎不符合常理,已被服务器防火墙拦截,如有疑问请联系打理员QQ:XXXXXX</br>如果你在开发测试过程中超频被封IP,请等待 . ($bantime / 60) . 分钟后自动解封</br>你的IP: . $ip . </p>); } $wafarr = $cache->get(waf- . $ip); if (!$wafarr) { $wafarr = [ path => $uri, time => time() + $allowtime, sum => 1, ]; $cache->set(waf- . $ip, $wafarr, time() + $allowtime); } else { if ($wafarr[sum] > $allownum) { $wafsum_arr = $cache->get(waf-sum- . $ip); if (!$wafsum_arr) { $wafsum_arr = [ sum => 1, ]; $cache->set(waf-sum- . $ip, $wafsum_arr, time() + $bantime); } else { if ($wafsum_arr[sum] > $allowRefresh) { $cache->set(waf-ban- . $ip, 1, time() + $bantime); file_put_contents($fileht, $ip . "n", FILE_APPEND); } else { $wafsum_arr[sum]++; $cache->set(waf-sum- . $ip, $wafsum_arr, time() + $bantime); } } file_put_contents($logPath, $ip . -- . date(Y-m-d H:i:s, time()) . -- . $uri . "n", FILE_APPEND); header("HTTP/1.1 403 Forbidden"); exit("请求频率QPS超过限制,请酌情访问,多次提醒后会封禁IP!"); } else { $wafarr[sum]++; $cache->set(waf- . $ip, $wafarr, $wafarr[time]); } } 内容看完了

相关文章

  • 云服务器就选奇异互动:高性能高性价比解决方案

    云服务器就选奇异互动:高性能高性价比解决方案你有没有想过,一个小小的网站加载延迟,可能就让访问者流失,甚至影响你的业务增长?在当今数字化浪潮中,云服务器已成为企业和个人的必备工具,它就像你的数字心脏,
    2026-10-25
  • 云服务器空间大小选购指南:怎么选才不会踩坑?

    云服务器空间大小选购指南:怎么选才不会踩坑?你是否曾经因为服务器空间不足而遭遇访问崩溃?或者曾经为追求高配置而多花冤枉钱?选择云服务器时,空间大小的判断往往成为困扰许多人的关键节点。无论你是个人开发者
    2026-10-25
  • 云服务器租赁最低价方案

    云服务器租赁最低价方案在当今数字化快速发展的时代,云服务器已经成为企业运营和个人开发的必备工具。无论是初创公司还是个人站长,都需要一个稳定、高效的服务器来支持业务运行。然而,面对市场上琳琅满目的云服务
    2026-10-25
  • Xiuno bbs 标签插件

    主题任意加标签, 通过关联调取近相关的主题用于推送,内容看完了
    2026-10-25
  • 云服务器月流量500G够做游戏服务器吗

    云服务器月流量500G够做游戏服务器吗你是否正在考虑自己搭建一个游戏服务器?或许是想为你的朋友们创建一个专属的Minecraft世界,或者是为了测试一款新游戏的多人模式?如果是这样,你可能会像我一样,
    2026-10-25

最新评论