- 修改web網站或專案的web.config中httpRuntime區段的maxRequestLength屬性。
- 修改C:\Windows\Microsoft.NET\Framework\v4.0.30319\Config\web.config(以.NET Framework 4.0為例)讓所有網站都繼承相同的設定。
- 以程式方式修改HttpRuntimeSection.MaxRequestLength屬性。
<httpRuntime maxRequestLength="10240" executionTimeout="300"/>
// Get the MaxRequestLength property value.
Response.Write("MaxRequestLength: " + configSection.MaxRequestLength + "<br>");
// Set the MaxRequestLength property value to 2048 kilobytes.
configSection.MaxRequestLength = 2048;
上述方式都可以順利調整檔案上傳時地限制大小,但萬一使用者上傳的檔案還是超過限制,在做完上述調整後可能收到下列錯誤訊息:
- 無法顯示網頁
- 伺服器應用程式無法使用
- 已傳回類型 System.OutOfMemoryException 的例外狀況
因此最好的做法就是在Global.asax實作錯誤控制機制,當檔案上傳超過限制時,出現友善的錯誤訊息(雖然有一派說法指出,錯誤訊息應避免太詳細,以免讓駭客有機可趁,在此僅提供可能的解決方案,麻煩各位依照自己的狀況自行斟酌使用)。
原文可以參考此篇文章
沒有留言:
張貼留言