IIS6 ASP 0251超过响应缓冲区限制错误的解决方法

今天在测试ASP做一个文件下载页面,用ADODB.Stream来操作文件下载达到隐藏真实路径的目的,因为是本地测试,所以一开始用的是一个63.8M的文件做下载测试,却提示如下的错误:
Response 对象 错误 'ASP 0251 : 80004005'

超过响应缓冲区限制

/showuser.asp,行 0

此 ASP 页的执行造成响应缓冲区超过其配置限制。

  想起IIS6下面文件上传默认的是200K,默认的缓冲会不会也有这个限制?于是将测试文件换成一个100K的,程序顺利通过,看来真是有这个限制,于是打开c:\windows\system32\inesrv\下的metabase.xml来看,搜索Buffer,一共找到四个,借助金山词霸确定是572行的AspBufferingLimit="4194304",换算了一下是4096(4M),于是将测试下载的文件又换成一个3.8M的,程序也顺利通过,再将测试文件换成一个5.1M的,又出现上面的错误,看来引起错误的原因应该是这个了,于是我在“4194304”加多了一个“0”,5.1的文件也可以顺利下载了,问题解决。

注意:改metabase.xml前必须先在服务里关闭iisadminservice服务,改完之后再重启IIS服务,或者打开IIS,在计算机名上点右键,选属性,勾选第一项“允许直接编辑配置数据库”,如果修改之后程序运行超时,可适当调整默认的超时时间,还有加大默认缓冲会不会导致其它问题我不清楚,由此引起的一切损失与本人无关,因此请自行决定是否采用,嘿嘿
原文地址:https://www.cnblogs.com/MaxIE/p/325631.html