问题描述
Response 对象 错误 ‘ASP 0251:80004005’
超出响应缓冲区限制
/xxxx.asp ,行0
此 ASP 页的执行造成响应缓冲区超过其配置限制。

问题原因
这个是因为页面中数据较多太大了,由于ASP在输入内容到客户的浏览器上之前,会把需要输出的全部内容先输出到缓存区,而这个缓存区一般默认大小为4194304,即4MB。从而导致执行造成响应缓冲区超过其配置限制。
解决方法
说明:修改任何文件之前记得先备份下在修改,以免改错或者误删
方法一,直接修改IIS主配置文件(全局修改)
1、在服务里面找到 IIS Admin Service 停止服务

2、进入C:\Windows\System32\inetsrv目录下找到MBSchema.xml
3、打开MBSchema.xml,找到 AspBufferingLimit 把他修改为需要的值,默认为4194304 把它修改为20971520(20M)或适合的数值,取决于服务器内存是否足够大(不要改太大以免导致内存占用完系统崩溃)

说明:2003操作系统在c:\windows\system32\inetsrv\下的metabase.xml文件配置文件下,08以上系统在MBSchema.xml
4、最后在服务里面找到 IIS Admin Service 重新启动服务
方法二,单独修改对应站点
2003系统直接改全局配置文件就可以了
2008以上系统
1、点击对应站点 >> 功能视图 >> IIS配置区 >> ASP配置功能

2、在ASP配置项中,找到限制属性 >> 响应缓冲限制,默认为4194304 把它修改为20971520(20M)或适合的数值,取决于服务器内存是否足够大(不要改太大以免导致内存占用完系统崩溃)

方法三,修改asp代码
在这个报错的asp文件最顶部加一句 response.buffer=false 这样设的话,可以输出全部内容,但是网页显示速度比较慢
至于用用那种方法看个人喜欢

