ASP .Net文件上载超出最大请求长度错误

时间:2012-10-01 20:11:59

标签: asp.net file-upload iis-7 sitecore sitecore6

我在页面上有一个简单的ASP .Net文件上传控件。我有以下web.config设置

<system.webServer>
      <security>
      <requestFiltering>
        <requestLimits maxAllowedContentLength="524288000" />
      </requestFiltering>
    </security>
 </system.webServer>

    <system.web>
      <httpRuntime maxRequestLength="524288" executionTimeout="120000" />
    </system.web>

我在开发箱上使用IIS 7.5,在Web服务器上使用IIS 7.

如果我上传大小为7MB的文件,它可以正常工作。

但是当我上传10MB的文件时,它会抛出以下异常

我在页面上有一个简单的ASP .Net文件上传控件。我有以下web.config次设置

Exception Details: System.Web.HttpException: Maximum request length exceeded.

Stack Trace:     

[HttpException (0x80004005): Maximum request length exceeded.]
   System.Web.HttpRequest.GetEntireRawContent() +8772610
   System.Web.HttpRequest.GetMultipartContent() +62
   System.Web.HttpRequest.FillInFormCollection() +168
   System.Web.HttpRequest.get_Form() +68
   System.Web.TraceContext.InitRequest() +910
   System.Web.TraceContext.VerifyStart() +143
   System.Web.HttpApplication.AssignContext(HttpContext context) +118
   System.Web.HttpRuntime.ProcessRequestNotificationPrivate(IIS7WorkerRequest wr, HttpContext context) +464

任何帮助都将受到高度赞赏。我知道这个问题已被多次询问,但这些解决方案都不适合我。

我们正在使用Sitecore内容管理系统。

2 个答案:

答案 0 :(得分:6)

您的maxRequestLength设置为512 MB,这个数据过大。尝试将其设置为12MB。

如果是窒息的IIS,请尝试将其设置为非应用程序级别;而是在文件夹中创建一个Web.Config。

此处提供更多信息:

http://weblogs.asp.net/jgalloway/archive/2008/01/08/large-file-uploads-in-asp-net.aspx

答案 1 :(得分:4)

我终于解决了。当我们使用Sitecore时,我们将页面作为特定路径的内容树上的项目。现在我们还有一些旧页面驻留在文件系统上。驻留在文件系统上的这些页面具有自己的本地web.config文件,其具有有限的maxrequest长度。此设置在上传大文件时会产生问题。

感谢各位的帮助。