国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 網站 > 建站經驗 > 正文

php網站防止刷流量攻擊方法

2024-04-25 20:36:59
字體:
來源:轉載
供稿:網友

流量攻擊是一種比較初級的網站攻擊方法,就是不停的去刷樣網站,導致服務器處理不過來或數據庫負載不了,導致網站無法正常方法的一種攻擊手段了,下面我來介紹一個利用php防網站刷流量攻擊方法.

php網站防止刷流量攻擊方法實例代碼如下:

代碼如下:

<?php

//查詢禁止IP

$ip =$_SERVER['REMOTE_ADDR'];

$fileht=".htaccess2";

if(!file_exists($fileht))file_put_contents($fileht,"");

$filehtarr=@file($fileht);

if(in_array($ip."rn",$filehtarr))die("Warning:"."<br>"."Your IP address are forbided by some reason, IF you have any question Pls emill to shop@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."rn",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($ipdate as $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."1rn";

elseif($numtem<$allowNum)$str.=$iptem.$uritem.$timetem.($numtem+1)."rn";

else

{

if(!file_exists($fileforbid)){$addforbidarr=array($ip."rn",time()."rn",1);file_put_contents($fileforbid,$addforbidarr);}

file_put_contents("log/forbided_ip.log",$ip."--".date("Y-m-d H:i:s",time())."--".$uri."rn",FILE_APPEND);

$timepass=$timetem+$allowTime-$time;

die("Warning:"."<br>"."Sorry,you are forbided by refreshing frequently too much, Pls wait for ".$timepass." seconds to continue!");

}//開源代碼phpfensi.com

}

}

}

if($yesno) $str.=$checkip.$checkuri.$time."1rn";

file_put_contents($file,$str);

?>

利用session 跟蹤防post提交,代碼如下:

代碼如下:

<?php

session_start();

$clean = array();

$email_pattern = '/^[^@s<&>]+@([-a-z0-9]+.)+[a-z]{2,}$/i';

if (preg_match($email_pattern, $_POST['email']))

{

$clean['email'] = $_POST['email'];

$user = $_SESSION['user'];

$new_password = md5(uniqid(rand(), TRUE));

if ($_SESSION['verified'])

{

/* Update Password */

mail($clean['email'], 'Your New Password', $new_password);

}

}

?>

 

 

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 元谋县| 凤台县| 福鼎市| 连山| 绵阳市| 临高县| 肇东市| 天等县| 台江县| 瓦房店市| 莆田市| 秭归县| 揭西县| 成武县| 阿城市| 四子王旗| 乌兰浩特市| 临清市| 丘北县| 高密市| 呼图壁县| 阿拉尔市| 长沙县| 仁寿县| 南江县| 大埔县| 栾城县| 包头市| 兰考县| 霍林郭勒市| 乐亭县| 九龙坡区| 天柱县| 土默特右旗| 乐山市| 化德县| 云安县| 从化市| 安远县| 无锡市| 松桃|