首先,最容易找到的是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 Express\config\schema\IIS_schema.xml
IIS7、8:C:\Windows\System32\inetsrv\config\schema\IIS_schema.xml

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

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

  <system.webServer>
<!--
IISExpress:C:\Users\UserName\Documents\IISExpress\config\applicationHost.config
IIS7、8:C:\Windows\System32\inetsrv\config\applicationHost.config
<section name="requestFiltering" overrideModeDefault="Allow" />
overrideModeDefault值设置成Allow的时候,本配置节才会生效。 也可以在IIS_Schema.xml中设置。(将影响整个计算机)
IISExpress:IISExpress运行路径下,C:\Program Files (x86)\IIS Express\config\schema\IIS_schema.xml
IIS7、8:C:\Windows\System32\inetsrv\config\schema\IIS_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:\Users\UserName\Documents\IISExpress\config\applicationHost.config
IIS7、8:C:\Windows\System32\inetsrv\config\applicationHost.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

ASP.NET 上传文件最大值调整的更多相关文章

  1. ASP.NET实现二维码 ASP.Net上传文件 SQL基础语法 C# 动态创建数据库三(MySQL) Net Core 实现谷歌翻译ApI 免费版 C#发布和调试WebService ajax调用WebService实现数据库操作 C# 实体类转json数据过滤掉字段为null的字段

    ASP.NET实现二维码 using System;using System.Collections.Generic;using System.Drawing;using System.Linq;us ...

  2. ASP.NET上传文件,已经上传的大小保存在session中,在另一个页面中读取session的值不行

    想自己做个ASP.NET上传文件时显示进度条的, 按照自己的想法,其实也就是显示每次已经上传的字节,从网上找到一个方法是能够把文件变成流以后再慢慢写入的,我在那个循环写入的时候每循环一次都把已经上传的 ...

  3. ASP.NET上传文件的几种方法

      //上传文件实例 if (fileDealer.HasFile)//判断文件是否存在        {            string filepath = "";     ...

  4. asp.net 上传文件超过了最大请求长度

    今天系统遇到了一个问题,上传4m以上的文件,uploadify就会报错:超过了最大请求长度. 开始我以为是设置的大小,可是后来我看了uploadify的fileSizeLimit=1024*10,也就 ...

  5. Asp.net上传文件后台通过二进制流发送到其他Url保存

    实际情况一般有单独的站点存放静态文件,比如图片.office文档等.A站点的操作需要上传文件到B站点, 下面介绍一种方法通过System.Net.WebClient类的UploadData方法 . u ...

  6. asp.net上传文件超过了最大请求长度[转]

    错误消息:超过了最大请求长度    错误原因:asp.net默认最大上传文件大小为4M,运行超时时间为90S.   解决方案 1. 修改web.config文件可以改变这个默认值            ...

  7. ASP.NET上传文件的三种基本方法

    ASP.NET依托.net framework类库,封装了大量的功能,使得上传文件非常简单,主要有以下三种基本方法. 方法一:用Web控件FileUpload,上传到网站根目录. Test.aspx关 ...

  8. asp.net 上传文件

    文件上传实例 公司产品中一直是采用 flash 实现文件上传功能,但用户的需求多了以后遇到了越来越多难以解决的问题,最后试着用硕正提供的freeform.小型页面控件来解决. 硕正文件上传的实现途径有 ...

  9. ASP.Net上传文件

    在做Web项目时,上传文件是经常会碰到的需求.ASP.Net的WebForm开发模式中,封装了FileUpload控件,可以方便的进行文件上传操作.但有时,你可能不希望使用ASP.Net中的服务器控件 ...

随机推荐

  1. js中判断true和false的情况

  2. 十分钟使用github pages +hexo拥有个人博客

    最近想自己搭建自己的个人博客,毕竟这样觉得比较geek,但是搜了资料,感觉良莠不齐,好多东西说的含糊不清,于是自己记录下自己的搭建过程. 1, 安装nodejs 2, 安装git 3, 申请githu ...

  3. lightoj 1427 - Substring Frequency (II) AC自动机

    模板题,找来测代码. 注意有相同单词 //#pragma comment(linker, "/STACK:1024000000,1024000000") #include<c ...

  4. visul studio 文件分包

    1.搜索算法. 2.软件控制逻辑. 3.自定义控件. 4.GUI模块. 5.线程化操作

  5. [Gnu]Centos7 解决 gdb 提示 Missing separate debuginfos

    Centos7 上使用gdb: $ gdb php $ run /home/www/2.php 运行完 run,后面跟着很长的提示: …. Missing separate debuginfos, u ...

  6. 两表(多表)关联update的写法

    SQL Server示例: update a set a.gqdltks=b.gqdltks,a.bztks=b.bztks from landleveldata a,gdqlpj b where a ...

  7. 8421BCD码转换为十进制

    这个转换和随意的认知是不同的,要了解BCD码和二进制码的区别 #define BCD_TO_BIN(val) ((val)=((val)&15) + ((val)>>4)*10) ...

  8. 小JAVA大世界之万年历

    import java.util.Scanner; public class Calendar { public static void main(String[] args) { // 万年历 in ...

  9. Spring JdbcTemplate 调用存储过程

    遇到调用存储过程的业务,以前有用过,但不是用Spring的 JdbcTemplate去做的,这次是在一个已经有的SpringMVC框架的项目下写处理存储过程的. 参考网络中的方法,在实际操作中遇到两个 ...

  10. Struts2注解使用说明

    Struts2注解 1 Struts2注解的作用 使用注解可以用来替换struts.xml配置文件!!! 2 导包 必须导入struts2-convention-plugin-2.3.15.jar包, ...