zoukankan      html  css  js  c++  java
  • ASP.NET 上传文件最大值调整

    首先,最容易找到的是web.config下面配置:

        <!--maxRequestLength=50MB-->
        <httpRuntime targetFramework="4.5.2" maxRequestLength="51200"/>

    这么设置会将请求的尺寸从默认4MB(4096KB)提升到50MB(51200KB)。

    但是,如果只是这么设置的话,你会发现你的最大上传尺寸会停止在28.6MB,更大的文件上传,将返回404.13,表示内容长度过大。

    原因在于IIS的默认设置,限定了maxAllowedContentLength的值。

    <element name="requestLimits"><attribute name="maxAllowedContentLength" type="uint" defaultValue="30000000" />

    该值在IIS_Schema.xml中设置。(将影响整个计算机)

    IISExpress:IISExpress运行路径下,C:Program Files (x86)IIS ExpressconfigschemaIIS_schema.xml
    IIS7、8:C:WindowsSystem32inetsrvconfigschemaIIS_schema.xml

    如果修改了这个值没有生效,两种可能,一种是当前运行的IISExpress/IIS没有关闭/重启。一种是web.config中有额外的配置(如下文所述)。

    然而为了避免总是去修改全局的值,影响到同一台服务器上的其他web站点,我们还可以在web.config中进行配置。

      <system.webServer>
        <!--
          IISExpress:C:UsersUserNameDocumentsIISExpressconfigapplicationHost.config
          IIS7、8:C:WindowsSystem32inetsrvconfigapplicationHost.config
          <section name="requestFiltering" overrideModeDefault="Allow" />
          overrideModeDefault值设置成Allow的时候,本配置节才会生效。
          
          也可以在IIS_Schema.xml中设置。(将影响整个计算机)
          IISExpress:IISExpress运行路径下,C:Program Files (x86)IIS ExpressconfigschemaIIS_schema.xml
          IIS7、8:C:WindowsSystem32inetsrvconfigschemaIIS_schema.xml
          修改defaultValue="30000000"(28.6MB)为需要的值。
          <element name="requestLimits"><attribute name="maxAllowedContentLength" type="uint" defaultValue="30000000" />
        -->
        <security>
          <requestFiltering>
            <!--maxAllowedContentLength=100MB-->
            <requestLimits maxAllowedContentLength="104857600"></requestLimits>
          </requestFiltering>
        </security>

    为了使该内容生效,需要配置“允许继承”,在applicationHost.config中搜索<section name="requestFiltering" overrideModeDefault="Allow" />中的关键字,确保这个值为Allow即可。

    IISExpress:C:UsersUserNameDocumentsIISExpressconfigapplicationHost.config
    IIS7、8:C:WindowsSystem32inetsrvconfigapplicationHost.config

    参考资料:

    http://www.iis.net/configreference/system.webserver/security/requestfiltering/requestlimits

    http://www.cnblogs.com/henryhappier/archive/2010/09/20/1832098.html

    https://msdn.microsoft.com/en-us/library/ms689462(v=vs.90).aspx

  • 相关阅读:
    【转】谈谈 JVM 内部锁升级过程
    TCP 和 UDP 协议简介
    《分布式系统原理介绍》读书笔记
    Paxos 协议简单介绍
    Lease 机制和 Quorum 机制
    HBase 学习二(最佳实践).
    HBase 学习一(基础入门).
    Spring 事务介绍
    《MySQL技术内幕:InnoDB存储引擎》读书笔记.
    数据库事务简介.
  • 原文地址:https://www.cnblogs.com/volnet/p/5588722.html
Copyright © 2011-2022 走看看