在我的应用程序中,我想上传大小超过3GB的文件。我尽可能地增加了最大文件请求超时。
但是当我选择3GB文件时,它甚至没有将页面发布到服务器。
我的网站配置:
上述配置是否可行?如果不是原因,我该如何解决?
答案 0 :(得分:1)
您需要在web.config中适当调整超时和请求长度:
<system.web>
<httpRuntime maxRequestLength="102400" executionTimeout="360"/>
</system.web>
当然要记住,3Gb文件需要很多耐心。实际上,我建议调查替代方案 - 对于这样大小的文件,HTTP post不会很好。
答案 1 :(得分:1)
我可能会采用FTP方法。使用FTPWebRequest - 尝试使用Google获取示例代码。
答案 2 :(得分:0)
答案 3 :(得分:0)
不幸的是,调整超时和请求长度是行不通的。上传完成之前,您的Web服务器将耗尽内存。
您需要的是一个文件上传控件,它会将您的上传内容分成更小的块,这样您就不会在上传时使用所有服务器的内存来保存文件。
可用的更好的文件上传控件之一是 Darren Johnstone's ASP.NET File Upload control. 此免费控件是标准ASP.NET文件上传组件的直接替代品,专门用于处理大型文件文件。它甚至包括一个不需要Flash的进度条。
完整的文档和安装说明在这里:
http://darrenjohnstone.net/aspnet-file-uploaddownload-module-v2-documentation/
控件(和源代码)可以在这里下载:
http://darrenjohnstone.net/downloads/