PHP限制访问频率,简易防止CC攻击_dnf手游脚本

PHP限制访问频率,简易防止CC攻击_dnf手游脚本

  发布时间:2026-07-22 20:39:27   作者:玩站小弟   我要评论
PHP限制访问频率,简易防止CC攻击_dnf手游脚本 介绍:由于自己使用API经常被频繁请求,制访止还偶尔被CC攻击,问频找到一套防止非正常高频dnf手游破解卸刃棍...。

介绍 :

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

优势 :

  • 简易易用 ,易防无论你懂不懂PHP开发,制访止只要会复制粘贴就行。问频dnf手游脚本
  • Memcached内存缓存技术,率简高性能,易防高并发 。制访止
  • 精准无误 ,问频0误封 。率简
  • 能防护QPS10000以内的易防CC攻击,校验机器配置 ,制访止有可能更高。问频
  • 拥穿着范围较广 ,率简dnf手游破界石任务怎么做直接你网站拥穿着PHP就行 。
  • 源码简易,可自行修改,可以套自己喜欢的前端模板主题  。

要求:

  • PHP版本 ≥ 7.2
  • PHP需安装Memcached扩展
  • Memcached ≥1.6

使用计划:

以下开源代码增补到你网站核心文件中  ,相当于你网站任何页面城市引用的一个文件 。类似于  :config.php
或者根据你的dnf手游破解卸刃棍程序逻辑增补到需要防CC的PHP文件头部即可 。

源码:

<span class="php"><span class="hljs-meta"><?php</span>
<span class="hljs-comment">/**
* 防止频繁请求 ,防范CC攻击  ,拥穿着上万并发
* 原创作家 :小伟
* 转载请保留版权 ,谢谢  !
*/</span>
ini_set(<span class="hljs-string">"display_errors"</span>, <span class="hljs-string">"Off"</span>);
error_reporting(E_ALL ^ E_NOTICE ^ E_WARNING);
extension_loaded(<span class="hljs-string">memcached</span>)<span class="hljs-keyword">or</span><span class="hljs-keyword">die</span>(<span class="hljs-string">memcached扩展未安装!</span>);
$logPath = $_SERVER[<span class="hljs-string">DOCUMENT_ROOT</span>] . <span class="hljs-string">/waf/waf.log</span>; <span class="hljs-comment">//日志记录文件保存路径  ,$_SERVER[DOCUMENT_ROOT]是dnf手游破解器网站根目录
$fileht = $_SERVER[<span class="hljs-string">DOCUMENT_ROOT</span>] . <span class="hljs-string">/waf/ban.log</span>; <span class="hljs-comment">//被拉黑IP记录文件保存路径
<span class="hljs-keyword">if</span>(!file_exists($logPath)){
@mkdir($_SERVER[<span class="hljs-string">DOCUMENT_ROOT</span>] . <span class="hljs-string">/waf/</span>, <span class="hljs-number">0777</span>, <span class="hljs-keyword">true</span>);
@file_put_contents($logPath, <span class="hljs-string"></span>);
@file_put_contents($fileht, <span class="hljs-string"></span>);
}
$allowtime = <span class="hljs-number">2</span>; <span class="hljs-comment">//防刷新时间(秒)
$allownum = <span class="hljs-number">5</span>; <span class="hljs-comment">//防刷新次数(比如2秒5次 ,超过就警告)
$allowRefresh = <span class="hljs-number">10</span>; <span class="hljs-comment">//在此警告次数之后拉黑IP
$bantime = <span class="hljs-number">600</span>; <span class="hljs-comment">//封禁时间  ,超时自动解封(秒)
$ip = $_SERVER[<span class="hljs-string">HTTP_X_FORWARDED_FOR</span>] ? $_SERVER[<span class="hljs-string">HTTP_X_FORWARDED_FOR</span>]: $_SERVER[<span class="hljs-string">REMOTE_ADDR</span>];
$uri = $_SERVER[<span class="hljs-string">PHP_SELF</span>];
$cache = <span class="hljs-keyword">new</span>Memcached();
$cache->addServer(<span class="hljs-string">127.0.0.1</span>, <span class="hljs-string">11211</span>)<span class="hljs-keyword">or</span><span class="hljs-keyword">die</span>(<span class="hljs-string">memcached接合出局 !</span>);
$inban = $cache->get(<span class="hljs-string">waf-ban-</span> . $ip);
<span class="hljs-keyword">if</span>($inban){
header(<span class="hljs-string">"HTTP/1.1 403 Forbidden"</span>);
<span class="hljs-keyword">exit</span>(<span class="hljs-string">

403 Forbidden 非法访问

你的请求似乎不符合常理 ,已被服务器防火墙拦截 ,如有疑问请联系管理员QQ :XXXXXX
如果你在开发测试过程中超频被封IP ,请等待</span> . ($bantime / <span class="hljs-number">60</span>) . <span class="hljs-string">分钟后自动解封
你的IP:
</span> . $ip . <span class="hljs-string">

</span>);
}
$wafarr = $cache->get(<span class="hljs-string">waf-</span> . $ip);
<span class="hljs-keyword">if</span>(!$wafarr){
$wafarr = [
<span class="hljs-string">path</span> => $uri,
<span class="hljs-string">time</span> =>time() + $allowtime,
<span class="hljs-string">sum</span> =><span class="hljs-number">1</span>,
];
$cache->set(<span class="hljs-string">waf-</span> . $ip, $wafarr, time() + $allowtime);
}<span class="hljs-keyword">else</span>{
<span class="hljs-keyword">if</span>($wafarr[<span class="hljs-string">sum</span>]> $allownum){
$wafsum_arr = $cache->get(<span class="hljs-string">waf-sum-</span> . $ip);
<span class="hljs-keyword">if</span>(!$wafsum_arr){
$wafsum_arr = [
<span class="hljs-string">sum</span> =><span class="hljs-number">1</span>,
];
$cache->set(<span class="hljs-string">waf-sum-</span> . $ip, $wafsum_arr, time() + $bantime);
}<span class="hljs-keyword">else</span>{
<span class="hljs-keyword">if</span>($wafsum_arr[<span class="hljs-string">sum</span>]> $allowRefresh){
$cache->set(<span class="hljs-string">waf-ban-</span> . $ip, <span class="hljs-number">1</span>, time() + $bantime);
file_put_contents($fileht, $ip . <span class="hljs-string">"n"</span>, FILE_APPEND);
}<span class="hljs-keyword">else</span>{
$wafsum_arr[<span class="hljs-string">sum</span>]++;
$cache->set(<span class="hljs-string">waf-sum-</span> . $ip, $wafsum_arr, time() + $bantime);
}
}
file_put_contents($logPath, $ip . <span class="hljs-string">--</span> . date(<span class="hljs-string">Y-m-d H:i:s</span>, time()) . <span class="hljs-string">--</span> . $uri . <span class="hljs-string">"n"</span>, FILE_APPEND);
header(<span class="hljs-string">"HTTP/1.1 403 Forbidden"</span>);
<span class="hljs-keyword">exit</span>(<span class="hljs-string">"请求频率QPS超过限制,请酌情访问 ,dnf手游破解版无限点券最新版多次提醒后会封禁IP !"</span>);
}<span class="hljs-keyword">else</span>{
$wafarr[<span class="hljs-string">sum</span>]++;
$cache->set(<span class="hljs-string">waf-</span> . $ip, $wafarr, $wafarr[<span class="hljs-string">time</span>]);
}
}</span>
/*** 防止频繁请求
,防范CC攻击,拥穿着上万并发* 原创作家:小伟* 转载请保留版权,谢谢!*/ini_set("display_errors", "Off");error_reporting(E_ALL ^ E_NOTICE ^ E_WARNING);extension_loaded(memcached) ordie(memcached扩展未安装!);    $logPath = $_SERVER[DOCUMENT_ROOT] . /waf/waf.log; //日志记录文件保存路径
,dnf手游破解版无限币$_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) ordie(memcached接合出局	!);    $inban = $cache->get(waf-ban- . $ip);if ($inban) {    header("HTTP/1.1 403 Forbidden");    exit(

403 Forbidden 非法访问

你的请求似乎不符合常理,已被服务器防火墙拦截 ,如有疑问请联系管理员QQ:XXXXXX
如果你在开发测试过程中超频被封IP ,请等待 . ($bantime / 60) . 分钟后自动解封
你的dnf单机手游破解版完美版IP:
. $ip .

);} $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]); }}
/*** 防止频繁请求,防范CC攻击,拥穿着上万并发* 原创作家:小伟* 转载请保留版权,谢谢 !*/ini_set("display_errors",dnf手游私服破解"Off");error_reporting(E_ALL ^ E_NOTICE ^ E_WARNING);extension_loaded(memcached) ordie(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) ordie(memcached接合出局!); $inban = $cache->get(waf-ban- . $ip);if ($inban) { header("HTTP/1.1 403 Forbidden"); exit(

403 Forbidden 非法访问

你的请求似乎不符合常理,已被服务器防火墙拦截 ,如有疑问请联系管理员QQ:XXXXXX
如果你在开发测试过程中超频被封IP,dnf手游无限内购破解版请等待 . ($bantime / 60) . 分钟后自动解封
你的IP:
. $ip .

);} $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]); }}
内容校验完了

相关文章

  • 当乐手游折扣app下载v886 安卓版 人气热度:24℃

    游戏简介 当乐手游折扣com.diguayouxi)是一款游戏盒子类福利资讯软件,软件中你可以自由的去选择游戏来进行冒险,大量的折扣和免费的福利就在这里等你哦 ,用起来还是
    2026-07-22
  • 光之守护者(TapTap测试版)没有火靴,火抗项链,猎人如何打沙漠之王

    光之守护者TapTap测试版)没有火靴 ,火抗项链,猎人如何打沙漠之王如下:1.火抗电抗先拉满  ,视野尽量10+,因为这样不容易因为boss的迷雾进而贴脸被控死 。2.技
    2026-07-22
  • 光与夜之恋书海文渊答案攻略

    光与夜之恋书海文渊问答活动 ,玩家需要根据给出的题目回答出正确答案 ,游戏宝小编带来光与夜之恋书海文渊答案攻略 ,一起来看看吧  。光与夜之恋书海文渊答案攻略1 、阿瑟克拉克 、艾萨克阿西莫夫与__并称为二十世纪三
    2026-07-22
  • 光遇呼风唤雨的统治者位置攻略2023

    光遇呼风唤雨的统治者是本周四将会复刻的一名先祖 ,玩家需要找到这位先祖以后才能兑换物品,游戏宝小编带来光遇呼风唤雨的统治者位置攻略 ,一起来看看吧。光遇呼风唤雨的统治者位置攻略20231、进入禁阁之后跳上
    2026-07-22
  • 想成为Galgame领域大神

    内容简介 想成为Galgame领域大神是款国产视觉小说游戏 ,您将扮演因车祸错过“天选试”的平凡少年陈舟 ,在Galgame被纳入义务教育的世界里 ,与神秘的转
    2026-07-22
  • 兄弟打印机安卓版v6132 人气热度:36℃

    游戏简介 兄弟打印机手机版是一款界面清爽、功能强大的手机打印辅助软件 。这款软件让用户无需待在电脑旁 ,只需使用手机和无线网络就可以轻松实现远程打印功能 ,不仅可以随时随地在手
    2026-07-22

最新评论