2026年5月20日

2026年5月20日

ファイルサイズ超過による500エラーの解決方法【upload_max_filesize】

はじめに

大きな画像・動画・プラグインZIPなどをWordPressにアップロードしようとすると、PHPのファイルサイズ制限に引っかかり500エラーが発生します。「ファイルサイズが制限を超えています」というメッセージが出る場合もあります。

ファイルサイズ制限に関連するPHP設定

| 設定項目 | デフォルト | 役割 |

|---------|---------|------|

| upload_max_filesize | 2M | 1ファイルの最大サイズ |

| post_max_size | 8M | 1リクエスト全体の最大サイズ |

| memory_limit | 128M | PHPのメモリ上限 |

| max_execution_time | 30 | 実行時間上限(秒) |

重要:post_max_sizeupload_max_filesize より大きくする必要があります。

現在の制限値を確認する

// 確認用(使用後は削除)
echo 'upload_max_filesize: ' . ini_get('upload_max_filesize') . '<br>';
echo 'post_max_size: ' . ini_get('post_max_size') . '<br>';
echo 'memory_limit: ' . ini_get('memory_limit');

解決方法①:wp-config.phpで設定する(最も簡単)

// wp-config.php に追加(ファイルの先頭、define文の前)
@ini_set('upload_max_filesize', '64M');
@ini_set('post_max_size', '64M');
@ini_set('memory_limit', '256M');

解決方法②:php.iniで設定する

; php.ini
upload_max_filesize = 64M
post_max_size = 128M
memory_limit = 256M
max_execution_time = 300
max_input_time = 300

解決方法③:.htaccessで設定する(Apache限定)

# .htaccess に追加
php_value upload_max_filesize 64M
php_value post_max_size 128M
php_value memory_limit 256M
php_value max_execution_time 300

解決方法④:WordPress管理画面の設定を変更する(一部ホスティング)

一部のホスティング(cPanel等)では、管理画面から直接PHP設定を変更できます:

cPanel → ソフトウェア → PHP設定(PHP Selector)
→ upload_max_filesize / post_max_size を変更

アップロードの代替方法

ファイルが非常に大きい場合(動画等)、FTPで直接アップロードする方法が確実です:

1. FTPで wp-content/uploads/YYYY/MM/ フォルダにファイルをアップロード

2. WordPress管理画面 → メディア → 「ファイルをメディアに追加」

または、Add From Server プラグインを使用

注意事項

  • post_max_size は必ず upload_max_filesize より大きく設定してください。例えば upload_max_filesize = 64M なら post_max_size = 128M 以上に設定します。
  • 動画ファイルは YouTube や Vimeo などの外部サービスを利用することを推奨します。サーバーへの直接アップロードはサーバー負荷と容量の観点から非推奨です。

まとめ

ファイルサイズ超過の500エラーは、upload_max_filesizepost_max_size を引き上げることで解決します。post_max_sizeupload_max_filesize より必ず大きく設定してください。

関連記事:

お気軽にご相談ください

お見積りへ お問い合わせへ