zoukankan      html  css  js  c++  java
  • IIS中的大文件上传问题解决方法

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

    首先在system.web中加入以下代码

    [csharp] view plain copy
     
     在CODE上查看代码片派生到我的代码片
    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
     
     在CODE上查看代码片派生到我的代码片
    1. <system.webServer>  
    2.     <security>  
    3.       <requestFiltering>  
    4.         <requestLimits maxAllowedContentLength="2072576000"/>  
    5.       </requestFiltering>  
    6.     </security>  
    7.   </system.webServer>  

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


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

  • 相关阅读:
    设计模式之模式方法模式
    Extjs 分页多选的实现
    设计模式之策略模式
    oracle 12c 报错 ora-03137 来自客户机的格式错误的TTC包被拒绝
    设计模式之状态模式
    设计模式之装饰者模式
    设计模式之代理模式
    设计模式之单例模式
    从reduce函数说起...
    Django View(视图系统)
  • 原文地址:https://www.cnblogs.com/lmy01/p/6391649.html
Copyright © 2011-2022 走看看