仓酷云
标题:
PHP网页编程之网站进攻DDOS的PHP代码
[打印本页]
作者:
小妖女
时间:
2015-1-16 22:17
标题:
PHP网页编程之网站进攻DDOS的PHP代码
PHP成功的插入,删除,更新数据的时候,显然,你已经距离成功指日可待了。明天的主题是网站打击与网站防护。这是我查到的材料,可以无效的拦阻住我的DDOS一个PHP代码
<?php
//查询克制IP
$ip=$_SERVER[REMOTE_ADDR];
$fileht=".htaccess2";
if(!file_exists($fileht))file_put_contents($fileht,"");
$filehtarr=@file($fileht);
if(in_array($ip."
",$filehtarr))die("Warning:"."<br>"."YourIPaddressareforbidedbysomereason,IFyouhaveanyquestionPlsemilltoshop@mydalle.com!");
//到场克制IP
$time=time();
$fileforbid="log/forbidchk.dat";
if(file_exists($fileforbid))
{if($time-filemtime($fileforbid)>60)unlink($fileforbid);
else{
$fileforbidarr=@file($fileforbid);
if($ip==substr($fileforbidarr[0],0,strlen($ip)))
{
if($time-substr($fileforbidarr[1],0,strlen($time))>600)unlink($fileforbid);
elseif($fileforbidarr[2]>600){file_put_contents($fileht,$ip."
",FILE_APPEND);unlink($fileforbid);}
else{$fileforbidarr[2]++;file_put_contents($fileforbid,$fileforbidarr);}
}
}
}
//防革新
$str="";
$file="log/ipdate.dat";
if(!file_exists("log")&&!is_dir("log"))mkdir("log",0777);
if(!file_exists($file))file_put_contents($file,"");
$allowTime=120;//防革新工夫
$allowNum=10;//防革新次数
$uri=$_SERVER[REQUEST_URI];
$checkip=md5($ip);
$checkuri=md5($uri);
$yesno=true;
$ipdate=@file($file);
foreach($ipdateas$k=>$v)
{$iptem=substr($v,0,32);
$uritem=substr($v,32,32);
$timetem=substr($v,64,10);
$numtem=substr($v,74);
if($time-$timetem<$allowTime){
if($iptem!=$checkip)$str.=$v;
else{
$yesno=false;
if($uritem!=$checkuri)$str.=$iptem.$checkuri.$time."1
";
elseif($numtem<$allowNum)$str.=$iptem.$uritem.$timetem.($numtem+1)."
";
else
{
if(!file_exists($fileforbid)){$addforbidarr=array($ip."
",time()."
",1);file_put_contents($fileforbid,$addforbidarr);}
file_put_contents("log/forbided_ip.log",$ip."--".date("Y-m-dH:i:s",time())."--".$uri."
",FILE_APPEND);
$timepass=$timetem+$allowTime-$time;
die("Warning:"."<br>"."Sorry,youareforbidedbyrefreshingfrequentlytoomuch,Plswaitfor".$timepass."secondstocontinue!");
}
}
}
}
if($yesno)$str.=$checkip.$checkuri.$time."1
";
file_put_contents($file,$str);
?>可以在书上很方便地做标记,及时记下自己的心得体会。
作者:
谁可相欹
时间:
2015-1-19 06:41
我还是推荐用firefox ,配上firebug 插件调试js能省下不受时间。谷歌的浏览器最好也不少用,因为谷歌的大侠们实在是太天才啦,把一些原来的js代码加了一些特效。
作者:
兰色精灵
时间:
2015-1-26 20:34
兴趣是最好的老师,百度是最好的词典。
作者:
深爱那片海
时间:
2015-2-4 21:18
写js我最烦的就是 ie 和 firefox下同样的代码 结果显示的结果千差万别,还是就是最好不要用遨游去调试,因为有时候遨游是禁用js的,有可能代码是争取结果被遨游折腾的认为是代码写错。
作者:
小魔女
时间:
2015-2-10 13:01
在我安装pear包的时候老是提示,缺少某某文件,才发现 那群extension 的排列是应该有一点的顺序,而我安装的版本的排序不是正常的排序。没办法我只好把那群冒号加了上去,只留下我需要使用的扩展。
作者:
海妖
时间:
2015-3-1 11:05
,熟悉html,能用div+css,还有javascript,优先考虑linux。我在开始学习的时候,就想把这些知识一起学习,我天真的认为同时学习能够互相呼应,因为知识是相通的。
作者:
再见西城
时间:
2015-3-10 17:11
php里的数组为空的时候是不能拿来遍历的;(这个有点低级啊,不过我刚被这个边界问题墨迹了好长一会)
作者:
老尸
时间:
2015-3-17 09:10
Ps:以上纯属原创,如有雷同,纯属巧合
作者:
山那边是海
时间:
2015-3-24 05:24
首先声明:我是一个菜鸟,是一个初学者。学习了一段php后总是感觉自己没有提高,无奈。经过反思我认为我学习过程中存在很多问题,我改变了学习方法后自我感觉有了明显的进步。
欢迎光临 仓酷云 (http://ckuyun.com/)
Powered by Discuz! X3.2