iis 7 上传大文件 出现的 HTTP 404 问题

转自:http://www.tuicool.com/articles/JrmUJ3

http://blog.csdn.net/panderman/article/details/6320262

引言

之前使用Uploadify做了一个上传图片并预览的功能,今天在项目中,要使用该插件上传大文件。之前弄过上传图片的demo,就使用该demo进行测试。可以查看我的这篇文章: [Asp.net]Uploadify所有配置说明,常见bug问题分析 。

大文件上传

第一步:修改uploadify参数

1             'fileSizeLimit': '0',//单个文件大小,0为无限制,可接受KB,MB,GB等单位的字符串值
2             'fileTypeDesc': '文件',//文件描述Image Files
3             'fileTypeExts': '*.zip; *.rar; *.png',//允许上传的文件类型

测试,用一个大于30M的文件,进行上传测试。 

第二步:修改web.config

1 <configuration>
2   <system.web>
3     <compilation debug="true" targetFramework="4.5" />
4     <!--maxRequestLength就是文件的最大字符数,最大值不能超过2个G左右,executionTimeout是超时时间--> 
5     <httpRuntime targetFramework="4.5" maxRequestLength="1073741824" executionTimeout="3600" />
6   </system.web>
7 </configuration>

测试,仍使用上面的文件,进行上传测试。

第三步:添加system.webServer节点

 1 <configuration>
 2   <system.web>
 3     <compilation debug="true" targetFramework="4.5" />
 4     <!--maxRequestLength就是文件的最大字符数,最大值不能超过2个G左右,executionTimeout是超时时间-->
 5     <httpRuntime targetFramework="4.5" maxRequestLength="1073741824" executionTimeout="3600" />
 6   </system.web>
 7   <system.webServer>
 8     <security>
 9       <requestFiltering>
10         <!--修改服务器允许最大长度-->
11         <requestLimits maxAllowedContentLength="1073741824"/>
12       </requestFiltering>
13     </security>
14   </system.webServer>
15 </configuration>

测试,仍然用上面的文件,进行上传测试:

设置IIS

 打开IIS管理器,找到Default Web Site。先进行停止。

在IIS中双击“请求筛选”打开。

点击右边的“编辑功能设置”,打开“编辑请求筛选设置”对话框。

其中的允许的最大容量长度,默认是”30000000“,30M,将其修改为1073741824,即1G。

启动IIS.

 总结

在项目中遇到了这样的问题,也花了点时间找解决方案,觉得既然花费了时间去找解决方案,就有必要总结一下,希望能帮到遇到同样问题的你。 这里不再提供demo,以可以从我上篇文章中下载,注意修改的地方已在本文章说明。

----------------------------------------------------------------------

公司有个项目

要求上传附件大小限制在50MB,原本以为可以轻松搞定。在编译模式下可以上传大文件,可是在IIS7下(自己架的服务器),一上传大的文件就会出现 Http 404错误,偶尔有的文件还有IO. error错误。一直搞不明白,在网上搜索大概了解上传控件分为两种上传模式:

1,将文件一次性读到内存中,然后再写到服务上。这样,如果文件太大就会导致服务响应变慢。

2,国外的上传控件Lion.Web.UpLoadModule,AspnetUpload(我也是通过网上搜索的),是将文件分块读取,读一些,写一些到硬盘上的。

我也未深入研究uploadify这个上传控件是不是第 2 种方法,就是拿过来用。

找了好久终于让我找到一篇文章解决了Http 404 的问题(好东西大家分享)

http://hi.baidu.com/v71000/blog/item/3ff017f7e13f727fdcc4748f.html

用uploadify在IIS6下上传大文件没有问题,但是迁移到IIS7下面,上传大文件时,出现HTTP 404错误。

查了半天,原来是IIS7下的默认设置限制了上传大小。这个时候Web.Config中的大小设置也就失效了。

具体步骤:

1、打开IIS管理器,找到Default Web Site。先进行停止。

2、在IIS中双击“请求筛选”打开。

3、点击右边的“编辑功能设置”,打开“编辑请求筛选设置”对话框。

     其中的允许的最大容量长度,默认是”30000000“,30M,将其修改为你所需要的大小即可。

4、启动IIS.

这样大文件的上传就解决了,在这之后继续写一些uploadify的心得,记录下来!




  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值