解除ASP.NET上傳文件的大小限制
解除ASP.NET上傳文件大小限制
今天作了個(gè)上傳的功能,用的是vs2005的FileUPLoad,在試了幾次上傳后發(fā)現(xiàn)這么個(gè)問題,如果上傳的文件少于4m的話,一切正常,但是如果超過了,則出現(xiàn)了一個(gè)about:blank的網(wǎng)頁,后來找到問題所在,原來是這樣的:ASP.NET在默認(rèn)情況下,ASP.NET上傳文件大小限制是4m。
解決方法也很簡單:在Web.config里加上
- <configuration>
- <system.web>
- <httpRuntimemaxRequestLengthhttpRuntimemaxRequestLength="1048576"
executionTimeout="3600"/>- < SPAN>system.web>
- < SPAN>configuration>
就行了。 maxRequestLength:指示 ASP.NET 支持的HTTP方式上載的最大字節(jié)數(shù)。該限制可用于防止因用戶 將大量文件傳遞到該服務(wù)器而導(dǎo)致的拒絕服務(wù)攻擊。指定的大小以 KB 為單位。默認(rèn)值為 4096 KB (4 MB)。executionTimeout:指示在被 ASP.NET 自動(dòng)關(guān)閉前,允許執(zhí)行請求的最大秒數(shù)。在當(dāng)文件超出指定的大小時(shí),如果瀏覽器中會(huì)產(chǎn)生 DNS 錯(cuò)誤或者出現(xiàn)服務(wù)不可得到的情況,也請修改以上的配置,把配置數(shù)加大。
另外,ASP.NET上傳文件時(shí),可能還會(huì)出現(xiàn)這個(gè)問題:aspnet_wp.exe (PID: 1520) 被回收,因?yàn)閮?nèi)存消耗超過了 460 MB(可用 RAM 的百分之 60)。如果遇到此錯(cuò)誤信息,相應(yīng)的也在WebConfig里加上 memoryLimit 屬性的值。例如:
- <configuration>
- <system.web>
- <processModelmemoryLimitprocessModelmemoryLimit="80"/>
- < SPAN>system.web>
- < SPAN>configuration>
以上是解除ASP.NET上傳文件的大小限制,使內(nèi)存的使用率提升到80%。
【編輯推薦】