2011年12月29日 星期四

執行 ASP 頁導致回應緩衝區超出其設定限制

執行存放於Windows 2003(IIS 6.0)的ASP程式,若出現「…執行 ASP 頁導致回應緩衝區超出其設定限制…」等錯誤訊息,依MSDN的說法,其發生的原因是:「之所以發生這個問題,是因為 IIS 6.0 中引進並加入 IIS 5.0 的行為變更。這些版本的 IIS 會強制執行 4 MB 的預設 ASP 回應緩衝區上限。此限制防止大型的 ASP 回應對裝載 Web 應用程式的 IIS 處理序造成不利的影響。」
解決方法就是將Buffer調大囉:在DOS模式下,執行底下指令
C:\windows\system32\cscript.exe C:\Inetpub\AdminScripts\adsutil.vbs SET w3svc/aspbufferinglimit 10485760
10485760這數字即是buffer的大小,10MB之意(即1024*1024*10),視自己的需求而定。
此指令如果執行有誤,請確認下cscript.exe及adsutil.vbs的存放路徑是否正確。
一般而言cscript.exe存放於C:\windows\system32目錄下,adsutil.vbs存放於C:\Inetpub\AdminScripts目錄下