当前位置:主页 > 教程 > cms教程 >

自制防简易CC攻击刷新跳转代码
栏目分类:cms教程   发布日期:2019-11-12   作者:婷婷    来源:网络整理

自制简易防CC攻击刷新跳转代码,每秒刷新过多后跳转防cc页,5秒后反回博客首页,感觉只能防一下乱刷新的人,就是打开博客一通乱点的人。 使用:以WordPress为例,在根目录创建cc.php文件,把php代码添加到里面保存,再创建cc.html文件把html代码放入保存,在

自制简易防CC攻击刷新跳转代码,每秒刷新过多后跳转防cc页,5秒后反回博客首页,感觉只能防一下乱刷新的人,就是打开博客一通乱点的人。自制防简易CC攻击刷新跳转代码

使用:以WordPress为例,在根目录创建cc.php文件,把php代码添加到里面保存,再创建cc.html文件把html代码放入保存,在到根目录的index.php文件最前面加上调用代码,调用cc.php文件即可,可把cc.php里的时间修改周期改长点。自制防简易CC攻击刷新跳转代码

cc.php代码

  1. <?php
  2. //代理IP直接退出
  3. emptyempty($_SERVER['HTTP_VIA'])?or?exit('Access?Denied');
  4. //防止快速刷新
  5. session_start();
  6. $seconds?=?'3';?//时间段[秒]
  7. $refresh?=?'8';?//刷新次数
  8. //设置监控变量
  9. $cur_time?=?time();
  10. if(isset($_SESSION['last_time'])){
  11. ?$_SESSION['refresh_times']?+=?1;
  12. }else{
  13. ?$_SESSION['refresh_times']?=?1;
  14. ?$_SESSION['last_time']?=?$cur_time;
  15. }
  16. //处理监控结果
  17. if($cur_time?-?$_SESSION['last_time']?<?$seconds){
  18. ?if($_SESSION['refresh_times']?>=?$refresh){
  19. ??//跳转防cc页
  20. ??header(sprintf('Location:%s',?'https://www.mom1.cn/cc.html'));
  21. ??exit('Access?Denied');
  22. ?}
  23. }else{
  24. ?$_SESSION['refresh_times']?=?0;
  25. ?$_SESSION['last_time']?=?$cur_time;
  26. }
  27. ?>

cc.html代码:

  1. <!DOCTYPE?HTML>
  2. <html>
  3. <head>
  4. <meta?http-equiv="Content-Type"?content="text/html;?charset=utf-8">
  5. <title>防CC刷新攻击中,5秒后跳转首页</title>
  6. <meta?http-equiv="refresh"?content="5;url=/"?/>
  7. <style>*{box-sizing:inherit;}body{min-height:100vh;display:flex;justify-content:center;align-items:center;background:#151924;padding:0;margin:0;}.loading{--color:#F5F9FF;--duration:2000ms;font-family:Roboto,Arial;font-size:24px;position:relative;white-space:nowrap;user-select:none;color:var(--color);}.loading?span{--x:0;--y:0;--move-y:0;--move-y-s:0;--delay:0ms;display:block;position:absolute;top:0;left:0;width:1px;text-indent:calc(var(--x)?*?-1);overflow:hidden;transform:translate(var(--x),var(--y));}.loading.start?div{opacity:0;}.loading.start?span{animation:move?var(--duration)?ease-in-out?var(--delay);}@keyframes?move{30%{transform:translate(var(--x),var(--move-y));}82%{transform:translate(var(--x),var(--move-y-s));}</style>
  8. </head>
  9. <body>
  10. <div?class="loading">防CC刷新攻击中,5秒后跳转首页</div><br>
  11. ????<script?src="https://cdn.bootcss.com/jquery/3.3.0/jquery.min.js"></script>
  12. ????<script?type="text/javascript">
  13. $(document).ready(function(){let?loading=$('.loading').wrapInner('<div></div>'),min=20,max=70,minMove=10,maxMove=20;startAnimation(loading);loading.on('animationend?webkitAnimationEnd?oAnimationEnd','span:last-child',e=>{startAnimation(loading)});function?setCSSVars(elem,min,max,minMove,maxMove){let?width=Math.ceil(elem.width()),text=elem.text();for(let?i=1;i<width;i++){let?num=Math.floor(Math.random()*(max-min+1))+min,numMove=Math.floor(Math.random()*(maxMove-minMove+1))+minMove,dir=(i%2==0)?1:-1,spanCurrent=elem.find('span:eq('+i+')'),span=spanCurrent.length?spanCurrent:$('<span?/>');span.css({'--x':i-1+'px','--move-y':num*dir+'px','--move-y-s':((i%2==0)?num*dir-numMove:num*dir+numMove)+'px','--delay':i*10+'ms'});if(!spanCurrent.length){elem.append(span.text(text))}}}function?startAnimation(elem){elem.removeClass('start');setCSSVars(elem,min,max,minMove,maxMove);void?elem[0].offsetWidth;elem.addClass('start')}});
  14. </script>
  15. </body>
  16. </html>

调用cc.php代码:

  1. require?'cc.php';

相关热词:

Copyright © 2016-2020 我爱分享网 版权所有   豫ICP备16008703号-1   关于我们 | 广告合作 | 版权声明 | 意见反馈 | 联系方式 | 原创投稿 | 网站地图 |
特效 教程 资源 资讯 福利