asp.net 上传大文件大小控制方案-阿里云开发者社区

开发者社区> 开发与运维> 正文

asp.net 上传大文件大小控制方案

简介: .NET默认允许上传4M的文件。 修改 Machine.config 文件,改动MaxRequestLength 参数的值。


.NET默认允许上传4M的文件。

修改 Machine.config 文件,改动MaxRequestLength 参数的值。在c:\winnt\microsoft.net 目录下搜索该文件.

需要注意的是:在保存文件时,您应该确保指定文件的完整路径,并确保为 ASP.NET 使用的帐户提供要存储文件的目录的写权限。上载大文件时,可使用Web.Config元素的 maxRequestLength 属性来增加文件大小的最大允许值,例如:

 <configuration>
    <system.web>
     <httpRuntimemaxRequestLength="1048576" executionTimeout="3600" />
    </system.web>
 </configuration>

其中:maxRequestLength:指示 ASP.NET 支持的HTTP方式上载的最大字节数(最大值是2097150,2G)。指定的大小以 KB 为单位。默认值为 4096 KB (4 MB)。executionTimeout:指示在被  ASP.NET 自动关闭前,允许执行请求的最大秒数。在当文件超出指定的大小时,如果浏览器中会产生 DNS 错误或者出现服务不可得到的情况,也请修改以上的配置,把配置数加大。


另外,上载大文件时,还可能会收到以下错误信息:

 aspnet_wp.exe (PID: 1520) 被回收,因为内存消耗超过了 460 MB(可用 RAM 的百分之 60)。

如果遇到此错误信息,请增加应用程序的 Web.config 文件的 元素中 memoryLimit 属性的值。例如:

 <configuration>
    <system.web>
       <processModelmemoryLimit="80"/>
    </system.web>
 </configuration>

如果是Windows Server2003:

在Windows Server 2003 下上传大文件注意事项:

在Windows Server 2003上传较大的附件进行发送时系统报错:


1.先在服务里关闭iis admin service服务 


2.找到 WINDOWS\system32\inetsrv\下的MetaBase.xml,
打开,找到ASPMaxRequestEntityAllowed 把他修改为需要的值,默认为204800,即200K,把它修改为51200000或者更大[根据文件大小确定]。


3.然后重启iis admin service服务


版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

分享:
开发与运维
使用钉钉扫一扫加入圈子
+ 订阅

集结各类场景实战经验,助你开发运维畅行无忧

其他文章