300字范文,内容丰富有趣,生活中的好帮手!
300字范文 > PHP程序防止ddos dns 集群服务器攻击

PHP程序防止ddos dns 集群服务器攻击

时间:2019-08-19 16:51:47

相关推荐

PHP程序防止ddos dns 集群服务器攻击

php教程|php手册

PHP,程序,防止,ddos,dns,集群,服务器,攻击,代码,片段,ddos,dns,集群,服务器,攻击,QQ3325

php教程-php手册

代码片段(1)

酒店源码下载,vscode活动栏变小,ubuntu 手机项目,pm2 tomcat,sqlite3数据库文件权限,早爬虫,php 数字 转字符串,seo外包接单渠道排名,手机网站dedecms,网页table模板lzw

ddos,dns,集群服务器攻击QQ33258影子可以测试满意担保

view source

时间同步源码,vscode搭建gcc,ubuntu右上角看不到图标,tomcat 测试配置,sqlite 空db插入,帝国修改密码插件,前端ui框架api安卓,爬虫软件哪里下载安全,php 使用 mysql,谷歌seo维护,网站安全狗插件,静态网页插入到discuz,智能行业网站模板lzw

print?

商城系统源码开源,如何ssh连接ubuntu,python爬虫实现思路,php 听力,海宁网页seolzw

001

002

<?php

003

004

//查询禁止IP

005

006

$ip =$_SERVER[REMOTE_ADDR];

007

008

$fileht=".htaccess2";

009

010

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

011

012

$filehtarr=@file($fileht);

013

014

if(in_array($ip."\r\n",$filehtarr))die("Warning:"."

"."Your IP address are forbided by some reason, IF you have any question Pls emill to shop@!");

015

016

017

018

//加入禁止IP

019

020

$time=time();

021

022

$fileforbid="log/forbidchk.dat";

023

024

if(file_exists($fileforbid))

025

026

{if($time-filemtime($fileforbid)>60)unlink($fileforbid);

027

028

else{

029

030

$fileforbidarr=@file($fileforbid);

031

032

if($ip==substr($fileforbidarr[0],0,strlen($ip)))

033

034

{

035

036

if($time-substr($fileforbidarr[1],0,strlen($time))>600)unlink($fileforbid);

037

038

elseif($fileforbidarr[2]>600){file_put_contents($fileht,$ip."\r\n",FILE_APPEND);unlink($fileforbid);}

039

040

else{$fileforbidarr[2]++;file_put_contents($fileforbid,$fileforbidarr);}

041

042

}

043

044

}

045

046

}

047

048

//防刷新

049

050

$str="";

051

052

$file="log/ipdate.dat";

053

054

if(!file_exists("log")&&!is_dir("log"))mkdir("log",0777);

055

056

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

057

058

$allowTime = 120;//防刷新时间

059

060

$allowNum=10;//防刷新次数

061

062

$uri=$_SERVER[REQUEST_URI];

063

064

$checkip=md5($ip);

065

066

$checkuri=md5($uri);

067

068

$yesno=true;

069

070

$ipdate=@file($file);

071

072

foreach($ipdate as $k=>$v)

073

074

{ $iptem=substr($v,0,32);

075

076

$uritem=substr($v,32,32);

077

078

$timetem=substr($v,64,10);

079

080

$numtem=substr($v,74);

081

082

if($time-$timetem<$allowTime){

083

084

if($iptem!=$checkip)$str.=$v;

085

086

else{

087

088

$yesno=false;

089

090

if($uritem!=$checkuri)$str.=$iptem.$checkuri.$time."1\r\n";

091

092

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

093

094

else

095

096

{

097

098

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

099

100

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

101

102

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

103

104

die("Warning:"."

"."Sorry,you are forbided by refreshing frequently too much, Pls wait for ".$timepass." seconds to continue!");

105

106

}

107

108

}

109

110

}

111

112

}

113

114

if($yesno) $str.=$checkip.$checkuri.$time."1\r\n";

115

116

file_put_contents($file,$str);

117

118

?>

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。