2009-07-14 108 views
2

我意識到這個問題的答案取決於所使用的特定服務器,但如果人們對ASP.NET Web表單允許的最大文件大小限制提出建議,我們感到很好奇。關於IIS中最大文件上傳大小的建議

爲希望允許平面設計師上傳的印刷公司工作。我知道他們會超出我給他們的限制......

+0

平面設計師是通過互聯網連接到服務器還是都在本地網絡上? – 2009-07-14 18:51:51

回答

3

你需要讓你的用戶滿意 - 如果他們需要上傳16MB +文件,那麼這就是你必須啓用的。如果可以的話,與他們進行對話並建立一個粗略的限制,他們會對所涉及的文件大小有最好的理解 - 儘量保持最小的實用價值,不要直接達到300MB或更高。如果可以的話,不要一次性允許多次上傳。

如果您只啓用某些頁面的上傳,您可以在您的Web.config中使用< location>元素來增加僅限於那些頁面/目錄的上傳限制,而不是整個網站 - 但它不會防止DOS攻擊,它減少了這種攻擊最可行的表面積,儘管你不太可能遇到這樣的攻擊。

如:

 
<location path="Upload.aspx"> 
    <system.web> 
     <httpRuntime maxRequestLength="16384" /> <!-- 16MB --> 
    </system.web> 
</location> 
1

另外,如果你將要部署IIS7上你的網站,那麼請記住,IIS7有其要求的掃描機制,不允許最大。請求內容長度超過30MB(默認情況下)。

即使您爲您的網站或網頁設置了超過30MB的maxRequestLength(在web.config中),IIS7也不允許上傳大於此值。您必須配置IIS以增加網站的默認內容長度限制。它可以使用以下命令完成,

appcmd set config "SiteName" -section:requestFiltering -requestLimits.maxAllowedContentLength:209715200 -commitpath:apphost 

我已經設置了最大值。上例中內容長度爲200MB(209715200字節)。