IIS 中设置文件上传最大长度

IIS出于安全考虑限制了大文件的上传,而网上百度到的大部分解决方法都是用一个管理员权限的记事本打开一个文件修改参数,但是我发现里面根本没有网上所说的那些参数,最后自己找到了修改发布文件的webconfig的方法解决的IIS对大文件上传的限制。

首先在system.web中加入以下代码
[csharp] view plain copy
 
  1. <httpRuntime  
  2.           maxRequestLength="2097151"//最大上传长度  
  3.           useFullyQualifiedRedirectUrl="true"  
  4.           executionTimeout="6000"//最大响应时间  
  5.           minFreeThreads="8"  
  6.           minLocalRequestFreeThreads="4"  
  7.           appRequestQueueLimit="100"  
  8.           enableVersionHeader="true"  
  9.     />  

这个也是网上百度答案中比较多的加法,这里修改最大上传的长度为2097151kb也就是2G,可以根据自己的需要修改这个大小。而executionTimeout属性是用于限制文件上传服务器的响应时间,也就是说如果网速很慢,上传同样大小的文件可能需要给予更长的响应时间,否则虽然没有达到上传大小限制但因为上传超时而被ISS拒绝。

 

但是以上方法仍然不够,我们还需要添加一个很关键的东西来修改IIS中的属性,第一次成功是通过打开IIS对应发布文件的

 

1、打开IIS选择你所发布的网页右边属性的最下面一项

2、打开后根据这个路径打开:system.webserver/security/requestFiltering

3、修改下图表示的部分的大小限制,单位为byte(图中为最大值)

 

这个地方默认是30000000byte,我将它修改成了IIS的最大限制2G(不到2G)。这种修改方法不是一劳永逸,如果重新发布或者重新选择别的发布文件那么它将会重置成30000000byte。
所以最后的解决方法是,在发布文件的webconfig中加入以下代码(放在system.web之外):

[csharp] view plain copy
 
  1. <system.webServer>  
  2.     <security>  
  3.       <requestFiltering>  
  4.         <requestLimits maxAllowedContentLength="2072576000"/>  
  5.       </requestFiltering>  
  6.     </security>  
  7.   </system.webServer>  

这样不管你发布它的IIS应用默认是多少,加载了这个网站后都会自动被设置为2G大小(可以根据自己的需求去修改这个大小)。

 


以上就是大文件在IIS上传受到限制的解决方法,希望能够帮助到大家。

公司简介

 

自1996年以来,公司一直专注于域名注册、虚拟主机、服务器托管、网站建设、电子商务等互联网服务,不断践行"提供企业级解决方案,奉献个性化服务支持"的理念。作为戴尔"授权解决方案提供商",同时提供与公司服务相关联的硬件产品解决方案。
备案号: 豫ICP备05004936号-1

联系方式

地址:河南省郑州市经五路2号

电话:0371-63520088

QQ:76257322

网站:800188.com

电邮:该邮件地址已受到反垃圾邮件插件保护。要显示它需要在浏览器中启用 JavaScript。