【问题标题】:IIS7 using HTML5 File API returns 404 for big filesIIS7 使用 HTML5 File API 为大文件返回 404
【发布时间】:2011-10-04 20:05:49
【问题描述】:

我正在尝试按照此示例实现用于上传图片的 File API

http://robertnyman.com/html5/fileapi-upload/fileapi-upload.html

在服务器端,我使用 ASP.NET MVC 3 和 IIS7(集成,仅限 32 位)

在本地使用 Development Server 和 IIS7.5 一切正常。在服务器上它也可以工作,除了如果文件具有特定大小(使用 2.2MB 图像文件),上传似乎可以工作,但响应是 404 页面。我已将 maxRequestLength 配置为 10MB,但即使使用默认的 4MB,它也应该可以工作。

我返回的 404 页面是 IIS7 默认的 404,而不是我的应用程序的 404 页面(通过查看 Fiddler 或 Firebug 中的结果)。我正在捕获所有随机 URL 并显示自定义 404 页面,但在这种情况下,请求似乎没有发送到 ASP.NET 管道(应用程序池设置为集成)。

我还记录了任何可能发生的异常(包括 404)——就这个问题而言,日志很清楚。服务器的事件日志中也没有任何内容。

有什么想法吗?

谢谢!

【问题讨论】:

    标签: asp.net-mvc html iis-7 http-status-code-404 fileapi


    【解决方案1】:

    它与 HTML5 File API 或 ASP.NET MVC 无关。

    问题是在 IIS7 中您必须指定 maxAllowedContentLength。宣传的默认值为 4MB,但似乎并非如此,因为上传 2MB 文件失败。有趣的是,本地的IIS7.5(Windows 7)似乎没有这个问题——可能在IIS7.5(Windows Server 2008 R2)中已经修复了

    要修复它,请在您的 web.config 中确保您有这样的内容:

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

    值以字节为单位;我指定了 10MB

    【讨论】:

      猜你喜欢
      • 2019-02-02
      • 1970-01-01
      • 2011-08-28
      • 1970-01-01
      • 1970-01-01
      • 2013-01-26
      • 2012-12-26
      • 2023-02-08
      • 1970-01-01
      相关资源
      最近更新 更多