今天作了个上传的功能,用的是vs2005的FileUPLoad,在试了几次上传后发现这么个问题,如果上传的文件少于4m的话,一切正常,但是如果超过了,则出现了一个about:blank的网页,后来找到问题所在,原来是这样的:asp.net在默认情况下,上传的文件大小限制是4m。
解决方法也很简单:在Web.config里加上
<configuration>
<system.web>
<httpRuntime maxRequestLength="1048576" executionTimeout="3600" />
</system.web>
</configuration>
就行了。 maxRequestLength:指示 ASP.NET 支持的HTTP方式上载的最大字节数。该限制可用于防止因用户 将大量文件传递到该服务器而导致的拒绝服务攻击。指定的大小以 KB 为单位。默认值为 4096 KB (4 MB)。executionTimeout:指示在被 ASP.NET 自动关闭前,允许执行请求的最大秒数。在当文件超出指定的大小时,如果浏览器中会产生 DNS 错误或者出现服务不可得到的情况,也请修改以上的配置,把配置数加大。
另外,上传大文件时,可能还会出现这个问题:aspnet_wp.exe (PID: 1520) 被回收,因为内存消耗超过了 460 MB(可用 RAM 的百分之 60)。如果遇到此错误信息,相应的也在WebConfig里加上 memoryLimit 属性的值。例如:
<configuration>
<system.web>
<processModel memoryLimit="80"/>
</system.web>
</configuration>
使内存的使用率提升到80%