我意识到这个问题的答案取决于所使用的特定服务器,但是如果人们对ASP.NET Web表单允许的最大文件大小限制有建议,那就很好奇。
为希望允许图形设计人员上传的印刷公司工作。我知道他们会超过我给他们的任何限制......
答案 0 :(得分:4)
您需要让用户满意 - 如果他们需要上传16MB +文件,那么您必须启用它。如果可以的话,与他们交谈并建立一个粗略的限制,他们将最好地了解所涉及的文件大小 - 尽量保持最小的实用价值,不要直接达到300MB或更多。如果可以,也不要一次允许多次上传。
如果您只启用某些网页的上传,则可以使用&lt; location&gt;您的Web.config中的元素只是为那些页面/目录而不是整个站点增加上传限制 - 虽然它不会阻止DOS攻击,但它会减少这种攻击最可行的表面区域,虽然你无论如何都不太可能遇到这样的攻击。</ p>
例如:
<location path="Upload.aspx"> <system.web> <httpRuntime maxRequestLength="16384" /> <!-- 16MB --> </system.web> </location>
答案 1 :(得分:1)
此外,如果您要在IIS7上部署站点,请记住IIS7的请求扫描机制不允许最大化。请求内容长度超过30MB(默认情况下)。
即使您为网站或网页设置了超过30MB的maxRequestLength(在web.config中),IIS7也不允许上传大于此值。您必须配置IIS以增加网站的默认内容长度限制。可以使用以下命令
完成appcmd set config "SiteName" -section:requestFiltering -requestLimits.maxAllowedContentLength:209715200 -commitpath:apphost
我设定了最大值。以上示例中的内容长度为200MB(209715200字节)。