"Request 對象 錯誤 'ASP 0104 : 80004005'”解決辦法

字號:


    Windows2003系統(tǒng)下,上傳較大的文件時,出現“Request 對象 錯誤 'ASP 0104 : 80004005'”錯誤。
    更改win2003的IIS 6.0對asp的上傳文件大小為200k限制,aspx的上傳程序沒有影響。在IIS6.0中,默認設置是特別嚴格和安全的,最大只能傳送 204,800 個字節(jié),這樣可以最大限度地減少因以前太寬松的超時和限制而造成的攻擊。IIS 6 出于安全考慮, 默認最大請求是200K(也即最大提交數據限額為200KByte,204800Byte)。(在 IIS 6.0 之前的版本中無此限制)
    解決方案
    辦法一:
    第一步:修改IIS設置,允許直接編輯配置數據庫。打開,Internet信息服務
    第二步:先在服務里關閉iis admin service服務,找到windowssystem32inetsrv下的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
    然后在命令行模式下,執(zhí)行 cscript 文件路徑及文件名,如:
    cscript d:vf.vbs
    這樣ASP上傳大小就更改為了上面設置的:51200000字節(jié) (50兆)