アップロードされたファイルが php.ini の upload_max_filesize ディレクティブを越えています
Docker で WordPress で構築し、xml ファイルなどをインポートする場合に、「アップロードされたファイルが php.ini の upload_max_filesize ディレクティブを越えています」というエラーがでる場合があります。
このエラーは、アップロードしようとしている XML ファイルのサイズが upload_max_filesize の制限を超えていることが原因です。Docker 環境でこの問題を解決するには、php.ini の設定を変更する必要があります。
php.ini の upload_max_filesize を増やす
Docker で WordPress を動かしている場合、PHP の設定を変更するには php.ini の upload_max_filesize と post_max_size を修正します。
docker-compose.yml の services セクションで 環境変数を指定 します。docker-compose.yml に以下の設定を追加します。
そして、uploads.ini を docker-compose.yml と同じディレクトリに作成し、以下の設定を追加します。
主な項目の説明
- upload_max_filesize: アップロード可能な単一ファイルの最大サイズ
- post_max_size: POST データ全体の最大サイズ(通常は upload_max_filesize より大きい値を設定)
- max_execution_time: スクリプトの最大実行時間(秒)
- memory_limit: PHPスクリプトが使用可能なメモリの最大値
これらの設定値は、あなたの要件に応じて調整してください。例えば、より大きなファイルをアップロードする必要がある場合は、値を増やすことができます。
その後、コンテナを再起動すれば反映されます。
設定が反映されたか確認する方法
設定が正しく適用されたかを確認するために、WordPress 内部の PHP 設定をチェックします。./html
ディレクトリ内に phpinfo.php
というファイルを作成し、以下の内容を記述します。
設定した URL が、`localhost:8008 の場合、localhost:8008/phpinfo.php にアクセスし、upload_max_filesize や post_max_size の値が 64M になっているか確認してください。