Windows2003系统下,上传较大的文件时,出现“Request 对象 错误 'ASP 0104 : 80004005'”错误。
更改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 d:\vf.vbs
这样ASP上传大小就更改为了上面设置的:51200000字节 (50兆)
关于win2003上传限制解决方案的补充说明
到微软站点载了IIS6 Resource Kit Tools(http://www.microsoft.com/downloads/details.aspx?FamilyID=56FC92EE-A71A-4C73-B628-ADE629C499&displaylang=en),安装后利用Metabase Explorer修改了(local)\LM\W3SVC\AspMaxRequestEntityAllowed属性(默认为200K=204800),修改为1G就是了;同时修改了AspScriptTimeout属性调整下时限,就可以上传大文件了。
此时发现AspMaxRequestEntityAllowed丢之,点右键添加new属性为asp,设置自己需要的大小,然后确定即可~~~
详细操作过程图片:
第一步: 到微软站点载了IIS6 Resource Kit Tools后,双击进行安装,出现如下界面:
第二步: 依次打开:开始-程序菜单-IIS Resources-Metabase Explorer,运行Metabase Explorer。
第三步: 在出现的窗口中填写相关信息:
第四步: 在程序窗口中选择(local)\LM\W3SVC
第五步: 修改(local)\LM\W3SVC\AspMaxRequestEntityAllowed属性,修改为较大的值,如1G:
补充:如果你按照“动易系统在Win2003下不能上传附件应该如何解决? ”的方法修改了,那么请继续下面步骤:
第一步:
第二步: 此时会出现aspmaxrequestentityallowed对象,鼠标双击。出现:
第三步: 点选:general,进行如下设置。
help.powereasy.net/help/SiteWe*Ver/151_2.html
修改Windows server 2003上传下载附件限制方法2008-12-05 13:33
Windows server 2003内置IIS6.0,IIS6.0默认设置会限制金和软件上传下载附件的大小,此方法可以解除限制。
1、此方法仅使用Windows server 2003。
1、IOA上传文件大于200K时报错。
解决方法
1)在服务管理中,关闭 IIS Admin Service 服务
2)打开 Windows\system32\inesrv\metabase.xml
3)修改 ASPMaxRequestEntityAllowed 的值为自己需要的, 默认为 204800(200K)
4)启动 IIS Admin Service服务即可。
2、IOA下载大附件时抱错。
解决方法:
1. 在服务管理中,关闭IIS Admin Service 服务
2. 打开 Windows\system32\inesrv\metabase.xml
3. 修改 AspBufferingLimit的值为自己需要的, 默认为4194304(4M)
4. 启动 IIS Admin Service服务即可。