PR
MAMPWordPress ブログ作成環境

MAMP の WordPress Mac 環境で WEB サーバを Nginx に変更するなら、413 エラーを予防しておこう!

macbook-mamp-nginx MAMP

スポンサーリンク

現状・条件

  • WordPress 5.2.2
  • Cocoon テーマ 1.9.3.1
  • MAMP Version 5.4 ( 372 )
  • DeMomentSomTres Export 2.5
  • WordPress Importer 0.6.4
  • MacBook Pro に MAMP 環境 を構築します。
  • MAMP のデフォルト WEB サーバ Apache を Nginx に変更します。
  • 下記の補足記事として作成されています。( ▼ )

WEB サーバを Nginx に変更する

MAMP.app を起動すると、Mac の画面左上に MAMP メニューが表示されます。
そこから、「MAMP → Preferences…」をクリックします。

wp-build-mamp-env-24

Web Server」タブで Nginx を選択して「OK」ボタンをクリックします。

wp-build-mamp-env-25

MAMP.app」で「Stop ServersStart Servers」順に MAMP を再起動して反映します。

wp-build-mamp-env-26

Nginx の 413 エラーを抑制しておく

MySQL を設定する前に、WEB サーバを Apache から Nginx に変更することができますが、後で WordPress 管理画面でテーマやプラグインを追加しようとすると、場合によって「413 Request Entity Too Large」エラーが発生します。

wp-build-mamp-env-21

このエラーの原因は Nginx のクライアント要求の本文サイズ値がデフォルト 1MB までであり、設置するテーマやプラグイン ファイルが 1MB を超える度に発生します。
なので、事前にそのデフォルト制限を変更しておきましょう!

下記のように Finder を開き、「アプリケーション → MAMP → conf → nginx → nginx.conf」順にファイルを開きます。

wp-build-mamp-env-22

nginx.conf の 24〜26 番ラインに、「client_max_body_size SIZE;」のように追加します。
SIZE には制限するマックス値を指定します。例えば、20MB のブラグインを設置したいなら SIZE に 20M を指定、無制限にするなら数字の 0 を指定します。

wp-build-mamp-env-23

追加したら、ファイルを保存して閉じてください。

MAMP.app」で「Stop Servers → Start Servers」順に MAMP を再起動して反映します。

次は、WordPress 用データベースを作成して残りの設定を完了します。( ▼ )

さいごに

途中で WEB サーバを変更するには、既存のデータベースか関連テーブルを削除する必要があります。なので、WEB サーバは初期段階で決めておきましょう!

Nginx を直しても 413 が消えない場合(2026 年 7 月 追記)

上の client_max_body_size を設定しても、まだアップロードで失敗する・413 が出る、というケースがあります。これはリクエストが Nginx → PHP の順に通るため、Nginx を通過しても次の PHP 側の上限に引っかかっているのが原因です。Nginx と PHP の両方を合わせておく必要があります。

MAMP の場合、PHP の設定ファイル(php.ini)は次のあたりにあります(PHP のバージョン番号は環境に合わせてください)。

アプリケーション/MAMP/bin/php/php<バージョン>/conf/php.ini

この中の次の 2 つの値を、扱いたいファイルサイズに合わせて上げます。

upload_max_filesize = 20M
post_max_size = 20M
  • upload_max_filesize:1 ファイルあたりのアップロード上限
  • post_max_size:POST 全体の上限。upload_max_filesize と同じか、少し大きめにします

三者(Nginx の client_max_body_size / PHP の upload_max_filesize / post_max_size)を同じくらいの値にそろえるのがコツです。どれか一つでも小さいままだと、そこで頭打ちになります。編集後は Nginx と PHP(MAMP)を再起動してください。

WordPress のメディアアップロード画面に表示される「最大アップロードサイズ」は、この upload_max_filesize の値が反映されます。設定が効いているかの確認にも使えます。

コメント

タイトルとURLをコピーしました