[英]ASP.NET MVC: Large file upload issue
在多个线程上讨论了此问题,但仍然无法正常工作。 我正在上传大约30MB的文本文件。 我正在使用一种经典方法,其中<form>
具有<input type="file"/>
并且表单提交由接受带有[HttpPost]
属性的HttpPostedFileBase
参数的方法处理。
问题:
在IE上,它显示以下消息:
HTTP错误404.13-找不到请求过滤模块配置为拒绝超出请求内容长度的请求。
在Firefox上文件上传时间过长(超过30分钟)。
我尝试的解决方案:在<httpRuntime>
设置maxRequestLength="102400" executionTimeout="3600"
。
我想要的是?
我知道即使我在所有浏览器上都能找到解决方案,但上传仍会花费大量时间。 我是否可以使用其他方法来使应用程序性能良好?
您已更改了请求长度,但未更改IE建议的内容长度。
尝试添加
<system.webServer>
<security>
<requestFiltering>
<requestLimits maxAllowedContentLength="36700160" />
</requestFiltering>
</security>
</system.webServer>
到您的web.config。
需要注意的是, maxAllowedContentLength
以字节为单位; 36,700,160字节应大致等于约35MB。
您需要做几件事,首先,您需要更改最大文件上传大小:
<system.webServer>
<security>
<requestFiltering>
<requestLimits maxAllowedContentLength="36700160" />
</requestFiltering>
</security>
</system.webServer>
其中maxAllowedContentLength
是最大文件大小(以字节为单位)
其次,使用该大小的文件,您可能需要更改请求超时限制,因为上传文件所花费的时间可能会超过默认值(我认为大约是2分钟):
<system.web>
<httpRuntime executionTimeout="300" />
</system.web>
其中executionTimeout
是以秒为单位的时间长度
将这些值更改为适合您的解决方案的感觉
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.