.NET附件(jiàn)上傳大小限製控(kòng)製(zhì)
今天在公司的服(fú)務器上搭建(jiàn)了一個Dvbbs.Net 1.1,協助管理公司一些辦公文件,由於要上傳的(de)文件大(dà)小部分較大(dà)(超(chāo)過幾十兆),所以(yǐ)今(jīn)天的大部(bù)分時間是研究怎麽破除上傳的限(xiàn)製問題。知道23點(diǎn)以後才(cái)基本(běn)上解決。
現將問題處理的(de)經驗總結如(rú)下(xià):
一(yī)、默認允許上傳4M的文件。
修改(gǎi) Machine.config 文件,改動 MaxRequestLength 參數的值。在c:\winnt\microsoft.net 目錄下搜索該文件(jiàn).
需要注意的是:在(zài)保(bǎo)存(cún)文件時,您應該確保指(zhǐ)定(dìng)文件的(de)完(wán)整(zhěng)路徑(例如,"C:\MyFiles\Picture.jpg"),並確(què)保為 ASP.NET 使用的帳戶提供要存儲文件的目錄(lù)的寫權限。上載大文件時,可(kě)使用 元素的 maxRequestLength 屬性來增加文件大小的最(zuì)大允許值,例如:
<configuration>
<system.web>
<httpRuntime maxRequestLength="1048576" executionTimeout="3600" />
</system.web>
</configuration>
其中:maxRequestLength:指示 ASP.NET 支持的HTTP方式上載(zǎi)的(de)最大字節數(shù)。該(gāi)限製可用於防止因用戶將大量文件(jiàn)傳遞到該服務器(qì)而(ér)導致的拒絕服(fú)務攻擊。指定(dìng)的(de)大小以 KB 為(wéi)單(dān)位(wèi)。默認值為(wéi) 4096 KB (4 MB)。executionTimeout:指示(shì)在被(bèi) ASP.NET 自動(dòng)關閉前,允許(xǔ)執行請求的最大秒數。在當(dāng)文件超(chāo)出指定的大小時(shí),如果瀏覽器中會(huì)產生 DNS 錯誤(wù)或者出現服務不可(kě)得到的情況,也請(qǐng)修改以上的配置,把配置數(shù)加大。
二、另(lìng)一(yī)個問題
另外,上(shàng)載大文件(jiàn)時,還可能會(huì)收到以下錯誤信息:
aspnet_wp.exe (PID: 1520) 被回收,因為內存消耗(hào)超過了 460 MB(可用(yòng) RAM 的百分之 60)。
如果遇(yù)到此錯(cuò)誤(wù)信息,請增加應(yīng)用程(chéng)序的 Web.config 文件的 元素中 memoryLimit 屬(shǔ)性的值。例如:
<configuration>
<system.web>
<processModel memoryLimit="80"/>
</system.web>
</configuration>
如果是Windows Server2003:
在Windows Server 2003 下上傳大文件(jiàn)注意事項:
在Windows Server 2003上傳較大的附件進行發送(sòng)時係統報錯:
1.先在服務裏關閉iis admin service服務
2.找到 WINDOWS\system32\inetsrv\下的MetaBase.xml,
打開(kāi),找到(dào)ASPMaxRequestEntityAllowed 把他修改為(wéi)需要的值,默認(rèn)為204800,即200K,把(bǎ)它修(xiū)改為51200000或者更大[根據文件(jiàn)大小確(què)定]。
3.然後重啟iis admin service服務。
關鍵詞:.NET,aspx
閱讀本文後您有什麽(me)感想(xiǎng)? 已有 人給出評價!
- 0
- 0
- 0
- 0
- 0
- 0