💨

HTTPエラー 413 Request Entity Too Large の対応 (.NET Frameworkの場合)

2025/02/12に公開

.NET FrameworkのASP.NET Web APIで発生するエラー ERR_FAILED 413 (Request Entity Too Large) を解決するための設定方法を説明します。

※ ASP.NET Core WebAPIの場合はこちらを参照してください。

エラー原因

413エラー(Request Entity Too Large)は、WebAPIに対してアップロードされるファイルやリクエストのサイズが設定された制限を超えた場合に発生します。
規定値は 30000000 バイト (約30 MB) です。
https://learn.microsoft.com/ja-jp/iis/configuration/system.webserver/security/requestfiltering/requestlimits/

解決方法

web.configでメッセージサイズの制限値であるmaxAllowedContentLengthを上書き設定します。
以下は実際に適用したファイル例です。無関係な要素の中身は省略しています。

Web.config
<?xml version="1.0"?>
<configuration>
  <appSettings>
  </appSettings>
  <system.web>
  </system.web>
  <runtime>
  </runtime>
  <system.webServer>
    <security>
      <requestFiltering>
        <requestLimits maxAllowedContentLength="50000000" />
      </requestFiltering>
    </security>
    <handlers>
    </handlers>
  </system.webServer>
  <system.codedom>
    <compilers>
    </compilers>
  </system.codedom>
</configuration>

参考情報

web.configを修正する以外にも対応方法があるようですが、私は実際に確認したことはありません。
もし確認出来たら追記しようと思います。

Discussion