asp.net文件/大文件上传需要配置的项目整理
2015-04-01 10:11
501 查看
asp.net程序默认上传文件是有大小限制的,默认是4M。IIS7下默认是30M。因此需要配置几个项目进行支持大文件(最大2G)的上传。
1、配置错误
说明: 在处理向该请求提供服务所需的配置文件时出错。请检查下面的特定错误详细信息并适当地修改配置文件。
分析器错误消息:
属性“maxRequestLength”的值无效。错误为: 该值必须在 0-2097151 范围内。
如果出现以下错误:
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。
异常详细信息: System.Web.HttpException: 超过了最大请求长度。
那是因为配置的maxRequestLength超过了2097151。
解决办法1:
Web.config 配置:
<configuration><system.web><httpRuntime maxRequestLength="4096" executionTimeout="3600" /></system.web><configuration>
注意修改超时时间:executionTimeout.单位是:秒。
解决办法2:修改Global.asax.cs的Application_BeginRequest方法:
HTTP 错误 404.13 - Not Found
请求筛选模块被配置为拒绝超过请求内容长度的请求。
最可能的原因:
•Web 服务器上的请求筛选被配置为拒绝该请求,因为内容长度超过配置的值。
可尝试的操作:
•确认 applicationhost.config 或 web.config 文件中的 configuration/system.webServer/security/requestFiltering/requestLimits@maxAllowedContentLength 设置。
详细错误信息:
模块
RequestFilteringModule
通知
BeginRequest
处理程序
PageHandlerFactory-Integrated
错误代码
0x00000000
原因:Web 服务器上的请求筛选被配置为拒绝该请求,因为内容长度超过配置的值(IIS
7 默认文件上传大小时30M)。
解决:更改asp.net文件上传大小限制
修改IIS的applicationhost.config
文件位置: %windir%/system32/inetsrv/config/applicationhost.config
找到<requestFiltering>节点,该节点下默认没有 <requestLimits maxAllowedContentLength="上传大小的值(单位:byte)" /> 元素。为这个节点添加如下元素:<requestLimits maxAllowedContentLength="2147483647" /> (上传的大小将改为2G)
web.config中,添加如下内容
<configuration> <system.web> <httpRuntime maxRequestLength="2097151" executionTimeout="120"/> </system.web> </configuration>
说明:
httpRuntime 配置 ASP.NET HTTP 运行时设置,以确定如何处理对 ASP.NET 应用程序的请求。
maxRequestLength (指示 ASP.NET 支持的最大文件上载大小)
指定输入流缓冲阈值限制(以 KB 为单位)。此限制可用于防止拒绝服务攻击;例如,因用户向服务器发送大型文件而导致的拒绝服务攻击。
默认值为 4096 (4 MB),最大值只能是2097151K。
executionTimeout
指定在被 ASP.NET 自动关闭前,允许执行请求的最大秒数。默认90秒。
只有当 compilation 元素中的调试属性为 False 时,此超时属性才适用。若要帮助避免在调试期间关闭应用程序,请不要将此超时属性设置为较大值。
web.config中,把以下内容加在<system.webServer>节点
<security>
<requestFiltering
>
<requestLimits
maxAllowedContentLength="2147483647"
></requestLimits>
</requestFiltering>
</security>
上述中maxAllowedContentLengt是以BK为单位。
当然,asp.net直接上传文件是对用户体验很不好的,可以参考以下文件上传控件:
[WCF教程--使用流Stream进行文件的上传下载]
[Jquery 下载插件jDownload--弹出框提示文件信息及下载(支持asp.net)---代码]
[Jquery文件下载及展示UI辅助插件--Downloadr(基于FaceBox)使用说明及代码示例]
[Jquery+asp.net实现Ajax方式文件下载实例代码]
相关文章推荐
- asp.net文件/大文件上传需要配置的项目整理
- asp.net 文件上传示例整理
- ASP.NET环境下配置FCKEditor并上传图片及其它文件
- CKEditor3.1在asp.net环境下上传文件的配置
- ASP.Net上传大文件解决方案之IIS7.0下的配置
- asp.net单元测试--配置文件自动复制到VS的测试项目的方法
- asp.net项目中通过Web.config配置文件及文件夹的访问权限---forms
- ASP.NET环境下配置FCKEditor并上传图片及其它文件
- jquery.uploadify上传文件配置详解(asp.net mvc)
- IIS7 大文件上传 asp.net iis配置
- jquery.uploadify上传文件配置详解(asp.net mvc)
- ASP.NET Core实现类库项目读取配置文件
- ASP.NET Core实现类库项目读取配置文件
- ASP.NET Core实现类库项目读取配置文件
- asp.net项目中通过Web.config配置文件及文件夹的访问权限!
- 如何在ASP.NET Core类库项目中读取配置文件详解
- [转]ExtJs入门之filefield:文件上传的配置+结合Ajax完美实现文件上传的asp.net示例
- ASP.NET项目中的web.config文件里配置数据库连接并在程序代码中获取连接字符串
- 用VSCode开发一个asp.net core2.0+angular5项目(5): Angular5+asp.net core 2.0 web api文件上传
- IT咨询顾问:一次吐血的项目救火 java或判断优化小技巧 asp.net core Session的测试使用心得 【.NET架构】BIM软件架构02:Web管控平台后台架构 NetCore入门篇:(十一)NetCore项目读取配置文件appsettings.json 使用LINQ生成Where的SQL语句 js_jquery_创建cookie有效期问题_时区问题