Windows2003系統(tǒng)下,上傳較大的文件時(shí),出現(xiàn)“Request 對(duì)象 錯(cuò)誤 'ASP 0104 : 80004005'”錯(cuò)誤。
更改win2003的IIS 6.0對(duì)asp的上傳文件大小為200k限制,aspx的上傳程序沒有影響。在IIS6.0中,默認(rèn)設(shè)置是特別嚴(yán)格和安全的,最大只能傳送 204,800 個(gè)字節(jié),這樣可以最大限度地減少因以前太寬松的超時(shí)和限制而造成的攻擊。IIS 6 出于安全考慮, 默認(rèn)最大請(qǐng)求是200K(也即最大提交數(shù)據(jù)限額為200KByte,204800Byte)。(在 IIS 6.0 之前的版本中無(wú)此限制)
解決方案
辦法一:
第一步:修改IIS設(shè)置,允許直接編輯配置數(shù)據(jù)庫(kù)。先打開,Internet信息服務(wù),如下圖:
第二步:先在服務(wù)里關(guān)閉iis admin service服務(wù),找到windows/system32/inesrv/下的metabase.xml, 打開,找到ASPMaxRequestEntityAllowed 把他修改為需要的值,默認(rèn)為204800,即200K,如把它修改為51200000(50M)。
然后重啟iis admin service服務(wù)。
辦法二:
新建一個(gè)文本文件,內(nèi)容如下:
'----------------------------------------------------
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上傳大小就更改為了上面設(shè)置的:51200000字節(jié) (50兆)
關(guān)于win2003上傳限制解決方案的補(bǔ)充說(shuō)明
到微軟站點(diǎn)載了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屬性(默認(rèn)為200K=204800),修改為1G就是了;同時(shí)修改了AspScriptTimeout屬性調(diào)整下時(shí)限,就可以上傳大文件了。
此時(shí)發(fā)現(xiàn)AspMaxRequestEntityAllowed丟之,點(diǎn)右鍵添加new屬性為asp,設(shè)置自己需要的大小,然后確定即可~~~
詳細(xì)操作過程圖片:
第一步: 到微軟站點(diǎn)載了IIS6 Resource Kit Tools后,雙擊進(jìn)行安裝,出現(xiàn)如下界面:
第二步: 依次打開:開始-程序菜單-IIS Resources-Metabase Explorer,運(yùn)行Metabase Explorer。
第三步: 在出現(xiàn)的窗口中填寫相關(guān)信息:
第四步: 在程序窗口中選擇(local)/LM/W3SVC
第五步: 修改(local)/LM/W3SVC/AspMaxRequestEntityAllowed屬性,修改為較大的值,如1G:
(責(zé)任編輯:武林網(wǎng))
新聞熱點(diǎn)
疑難解答
圖片精選