十、在windows2003上安装tasi后,提交论文有的文件提交成功,有的提交时报错,后来发现是文件超过一定大小后就会报错,错误信息如下:
后来从网上查一些资料才知道原因:
IIS6.0 禁止上传超过 200kB 的文件. 因此你需要修改 IIS 的默认设置.
技术背景
在 IIS 6.0 中, AspMaxRequestEntityAllowed 属性指定了一个 ASP 请求(Request)可以使用的最大字节数. 如果 Content-Length 头信息中包含的请求长度超过了 AspMaxRequestEntityAllowed 的值, IIS 将返回一个 403 错误信息.
这个属性值与 MaxRequestEntityAllowed 相似, 但是是针对 ASP 请求的. 假如你知道自己的 ASP 应用只需要处理很少的请求数据, 你可以在 World Wide Web Publishing Service (WWW 发布服务)层级设定全局的 MaxRequestEntityAllowed 属性为 1MB, 并单独设定 AspMaxRequestEntityAllowed 为一个较小的值.
解决方法1
打开位于 C:\Windows\System32\Inetsrv 中的 metabase.XML, 并修改 AspMaxRequestEntityAllowed 为你需要的值(例如 "1073741824", 1GB).注意: 在编辑文件前请停止 IIS 服务, 否则无法保存修改后的文件.
解决方法2
如果上面的方法无法修改,到微软站点载了IIS6 Resource Kit Tools(http://www.microsoft.com/downloads/details.aspx?FamilyID=56FC92EE-A71A-4C73-B628-ADE629C89499&displaylang=en),安装后利用Metabase Explorer修改了(local)\LM\W3SVC\AspMaxRequestEntityAllowed属性(默认为200K=204800),修改为4M就是了;同时修改了AspScriptTimeout属性调整下时限,就可以上传大文件了。
解决办法3:
1. 关闭 IIS Admin Service 服务
2. 打开 \Windows\system32\inesrv\metabase.xml
3. 修改 ASPMaxRequestEntityAllowed 的值为自己需要的, 默认为 204800
4. 启动 IIS Admin Service
解决方法4
1. 新建文本文件:
'use VBS set obj1=GetObject("winmgmts:/root/MicrosoftIISv2") set obj2=obj1.get("IIsWebVirtualDirSetting='W3SVC/1/ROOT'") 'Output default value WScript.Echo "AspMaxRequestEntityAllowed Default Value: " & obj2.AspMaxRequestEntityAllowed 'Reset the value obj2.AspMaxRequestEntityAllowed=1024000 ' set to 1mbyte, u can set to other what you want :) ' Save data obj2.Put_() 'Output new value WScript.Echo "AspMaxRequestEntityAllowed New Value: " & obj2.AspMaxRequestEntityAllowed
2. 保存为requestchange.vbs
3. 进入命令行, 运行:
cscript [path]requestchange.vbs
