当我试图在我的网站上上传视频时,我得到错误的最大请求长度超过了。
我怎么解决这个问题?
当我试图在我的网站上上传视频时,我得到错误的最大请求长度超过了。
我怎么解决这个问题?
当前回答
如果你不能更新配置文件,但是控制了处理文件上传的代码,请使用HttpContext.Current.Request.GetBufferlessInputStream(true)。
disableMaxRequestLength参数的true值告诉框架忽略配置的请求限制。
详情请访问https://msdn.microsoft.com/en-us/library/hh195568(v=vs.110).aspx
其他回答
把所有的答案总结在一个地方:
<system.web>
<httpRuntime targetFramework="4.5.2" maxRequestLength="1048576"/>
</system.web>
<system.webServer>
<security>
<requestFiltering>
<requestLimits maxAllowedContentLength="1073741824" />
</requestFiltering>
</security>
</system.webServer>
规则:
maxRequestLength(以kb表示)值必须匹配 maxAllowedContentLength(以字节表示)。 大多数时候是你的系统。web section可能已经包含了一个“httpRuntime”。将你的targetFramework设置为你使用的。net版本。
注:
maxRequestLength的默认值是4096 (4mb)。最大值为2147,483,647 maxAllowedContentLength的默认值是30,000,000(大约30mb)。最大值为4,294,967,295
更多信息MSDN
我必须编辑C:\Windows\System32\inetsrv\config\applicationHost。将<requestLimits maxAllowedContentLength="1073741824" />添加到…
<configuration>
<system.webServer>
<security>
<requestFiltering>
部分。
根据这篇微软支持文章
我认为这里没有提到它,但为了让它工作,我必须在web.config中提供这两个值:
在包含
<httpRuntime maxRequestLength="1048576" executionTimeout="3600" />
在system。webserver中
<security>
<requestFiltering>
<requestLimits maxAllowedContentLength="1073741824" />
</requestFiltering>
</security>
重要提示:这两个值必须匹配。在这种情况下,我的最大上传是1024兆字节。
maxAllowedContentLength有1073741824字节。
我知道这很明显,但很容易被忽视。
这里如ex.我采取1024 (1MB) maxAllowedContentLength(长度字节)应该与你的maxRequestLength(1048576字节= 1MB)相同。
<system.web>
<httpRuntime maxRequestLength="1024" executionTimeout="3600" />
</system.web>
<system.webServer>
<security>
<requestFiltering>
<requestLimits maxAllowedContentLength="1048576"/>
</requestFiltering>
</security>
</system.webServer>
这也困扰了我好几天。 我修改了网页。配置文件,但它没有工作。 原来有两个Web。配置文件在我的项目, 我应该修改ROOT目录下的那个,而不是其他的。 希望这对你有所帮助。