2026年7月12日

2026年7月12日

WordPressのHTTP 415 Unsupported Media Typeを解決

はじめに

WordPressサイト運営において、メディアファイルのアップロードやリクエストが原因で発生するHTTP 415 Unsupported Media Typeエラーは、サイト利用者にとって非常に不便な問題を引き起こします。この記事では、HTTP 415エラーが発生した場合にWordPressサイトを正常に動作させるための対策について解説します。

症状・背景

  • メディアファイル(画像や動画)をアップロードしようとした際
  • 特定のフォームリクエストを行おうとした際
  • WordPressプラグインが特定のメディア操作を行うとき
  • サーバー設定によっては、マルチパート・フォームデータの不適切な処理により発生

手順・設定方法

ステップ1: ファイルアップロード制限を確認する

# php.iniファイルを開く
sudo nano /etc/php/7.4/apache2/php.ini

# post_max_sizeとupload_max_filesizeの値が適切であることを確認、必要に応じて変更
post_max_size = 10M
upload_max_filesize = 8M

# ファイルを保存してApacheを再起動
sudo systemctl restart apache2

ステップ2: .htaccessファイルの設定を確認する

# WordPressルートディレクトリにある.htaccessファイルを開く
nano ./.htaccess

# 下記のような追加のセクションが存在しない場合は追加
<IfModule mod_rewrite.c>
  RewriteEngine On
  RewriteBase /
  <FilesMatch "\.(jpg|jpeg|png|gif|bmp)$">
    Header set X-Content-Type-Options "nosniff"
  </FilesMatch>
</IfModule>

# ファイルを保存してApacheを再起動
sudo systemctl restart apache2

ステップ3: WordPressの設定ファイルwp-config.phpの確認

# wp-config.phpファイルを開く
nano /var/www/html/wp-config.php

# 下記のような追加の定義があることを確認、必要に応じて追加
define('WP_DEBUG', true);
@ini_set( 'display_errors' , '1' );

ステップ4: サーバー側設定を確認・修正する

# メディアファイルのアップロード制限をサーバー設定で調整
sudo a2enmod reqtimeout
nano /etc/apache2/mods-available/reqtimeout.conf

# 下記のように設定を追加または変更
RequestReadTimeout header=50-50,MinRate=500 body=10,MinRate=500

# ファイルを保存してApacheを再起動
sudo systemctl restart apache2

注意事項

  • PHPバージョンのアップデートにより、設定が影響を受けている可能性がある。
  • .htaccessファイルは特定のサーバー構成で無効である場合もあるため、テスト後に適用すること。
  • WordPressプラグインがHTTP 415エラーを引き起こす可能性がある。問題解決に失敗した場合は、プラグインの一時的な無効化や更新を試みてください。
  • サーバーのセキュリティ設定により、特定のメディア操作が制限されている場合がある。

まとめ

1. ファイルアップロード制限: ファイルサイズと同時にリクエスト全体の上限も確認・調整が必要です。

2. サーバーセットアップ: .htaccessやApacheの設定を適切にカスタマイズすることで、HTTP 415エラーの発生を防止できます。

3. wp-config.phpファイル: デバッグ情報を有効にして、問題の特定が容易になることがあります。

4. プラグインチェック: 問題が続く場合は、プラグインの一時的な無効化も考慮してください。

5. 定期的なテスト: 変更後の動作確認と、セキュリティ設定のレビューが必要です。

関連記事:

お気軽にご相談ください

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