您的位置:首页 > 编程语言 > ASP

[整理]更改win2003的IIS 6.0对上传下载文件的大小限制

2006-03-17 19:39 591 查看
更改win2003的IIS 6.0对asp的上传文件大小为200k限制,aspx的上传程序没有影响。在IIS6.0中,默认设置是特别严格和安全的,最大只能传送 204,800 个字节,这样可以最大限度地减少因以前太宽松的超时和限制而造成的攻击。IIS 6 出于安全考虑, 默认最大请求是200K(也即最大提交数据限额为200KByte,204800Byte)。(在 IIS 6.0 之前的版本中无此限制)

解决方案

办法一:

第一步:修改IIS设置,允许直接编辑配置数据库。先打开,Internet信息服务,把允许直接编辑配置数据库的勾先勾起来



第二步:先在服务里关闭iis admin service服务,找到windows/system32/inesrv/下的metabase.xml, 打开,找到ASPMaxRequestEntityAllowed 把他修改为需要的值,默认为204800,即200K,如把它修改为51200000(50M)。
然后重启iis admin service服务。

办法二:

新建一个文本文件,内容如下:

'----------------------------------------------------

set providerObj=GetObject("winmgmts:/root/MicrosoftIISv2")

set vdirObj=providerObj.get("IIsWebVirtualDirSetting='W3SVC/1/ROOT'")

WScript.Echo "Before: " & vdirObj.AspMaxRequestEntityAllowed

vdirObj.AspMaxRequestEntityAllowed=51200000

vdirObj.Put_()

WScript.Echo "Now: " & vdirObj.AspMaxRequestEntityAllowed

'----------------------------------------------------

然后保存为.vbs文件,如:vf.vbs

然后在命令行模式下,执行 cscript 文件路径及文件名,如:

cscript f:/vf.vbs

这样ASP上传大小就更改为了上面设置的:51200000字节 (50兆)

在 IIS 6.0 中,无法下载超过4M的附件时,可以按以下步骤解决:

1、先在服务里关闭 iis admin service 服务。
2、找到 windows/system32/inetsrv/ 下的 metabase.xml 文件。
3、用纯文本方式打开,找到 AspBufferingLimit 把它修改为需要的值(可修改为20M即:20480000)。
4、存盘,然后重启 iis admin service 服务。

估计这个也可以通过修改上面VBS脚本里的绿色行来完成,我没测试,有兴趣的朋友测试了给我留言一个
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息