2011-07-13 6 views
1

私は、この例で、サーバー側でIIS7は、大きなファイル

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

私はASP.NET MVC 3を使用しています以下の画像アップロード用のファイルAPIを実装しようとしているために404を返しますIIS7(統合、32ビットのみ)

開発サーバーとIIS7.5ではすべてが正常に動作します。サーバー上では、ファイルが特定のサイズ(2.2MBのイメージファイルで作業している)の場合、アップロードが正常に機能しているように見えますが、応答は404ページです。 maxRequestLengthを10MBに設定しましたが、デフォルトの4MBでもうまくいきました。

404ページは、私のアプリケーションの404ページではなく、デフォルトではIIS7です(FiddlerまたはFirebugの結果を参照)。私はすべてのランダムなURLをキャッチしてカスタム404ページを表示していますが、この場合はリクエストがASP.NETパイプラインに送信されないようです(アプリケーションプールは統合されています)。

また、発生する可能性のある例外(404を含む)も記録しています。ログはこの問題まではっきりしています。サーバーのイベントログには何もありません。

アイデア?

ありがとうございます!

答えて

8

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

関連する問題