2026年10月26日
2026年10月26日
WordPressの添付ファイルページが404になる
はじめに
この記事では、WordPressで添付ファイルページが見つからないエラー(404)について解説します。この問題は、サイトのユーザーエクスペリエンスを損なう可能性があるため、速やかに対処することが重要です。
症状・背景
- ファイルをアップロード後に直接アクセスできない
- 画像やファイルへのリンクが壊れている
- WordPressの設定に変更があり、以前機能していた添付ファイルページが404エラーを返すようになった
- ネットワーク環境やサーバー構成の変更により、添付ファイルの参照パスが正常に解決できなくなった
手順・設定方法
ステップ1: .htaccessファイルを確認する
# WordPressのルートディレクトリに移動します。
cd /var/www/html/your-wordpress-site/
# 現在の.htaccessファイルの内容を表示します。
cat .htaccess
# ファイルが存在しない場合、WordPressが自動的に生成するため、wp-admin/install.phpにアクセスします。
wget http://localhost/wp-admin/install.php
ステップ2: WordPressの設定を確認/変更
# wp-config.phpファイルを開きます。
nano /var/www/html/your-wordpress-site/wp-config.php
# 以下の行が存在するか確認し、必要に応じて変更します。
define('UPLOADS', 'uploads');
# ファイルを保存して閉じます(Ctrl+O, Ctrl+X)。
# wp-adminの設定ページを開き、メディア設定を確認/変更します。
wget http://localhost/wp-admin/options-media.php
ステップ3: WordPressの固定リンク構造を再生成
# phpMyAdminまたはMySQLコマンドラインを使用してデータベースにアクセスします。
mysql -u username -p database_name
# wp_postsテーブルから固定リンク情報を更新するクエリを実行します。
UPDATE wp_posts SET guid = REPLACE(guid, 'http://example.com', 'http://localhost');
UPDATE wp_posts SET post_content = REPLACE(post_content, 'http://example.com', 'http://localhost');
# wp_postmetaテーブルからファイルのURL情報を更新するクエリを実行します。
UPDATE wp_postmeta SET meta_value = REPLACE(meta_value, 'http://example.com', 'http://localhost') WHERE meta_key = '_wp_attached_file';
# 変更を保存してデータベースセッションを終了します。
exit;
ステップ4: .htaccessファイルにリダイレクトルールを追加
# .htaccessファイルを開きます。
nano /var/www/html/your-wordpress-site/.htaccess
# 以下の行を追加して、添付ファイルページのURLにリダイレクトします。
RewriteRule ^wp-content/uploads/(.*)$ http://localhost/wp-content/uploads/$1 [R=301,L]
# ファイルを保存して閉じます(Ctrl+O, Ctrl+X).
注意事項
- .htaccessファイルの編集は慎重に行い、バックアップを取ること。
- MySQLクエリを使用する際には、データベース構造や使用言語に適応させる必要がある。
- リダイレクトルールがサイト全体のパフォーマンスに影響を与える可能性があるため、最小限にとどめるべきである。
- セキュリティ上の注意: .htaccessファイルやwp-config.phpに書き込みを許可する前に、適切なアクセス制御を設定すること。
- パフォーマンス/運用上の注意: リダイレクトルールはサイトのパフォーマンスに影響を与える可能性があるため、必要最小限の設定とし、定期的にモニタリングを行うこと。
まとめ
1. .htaccessファイルを確認: .htaccessファイルが存在し、正しい構造になっていることを確認します。
2. WordPressの設定を確認/変更: メディアの保存場所や固定リンクの構造が適切に設定されているか確認します。
3. 固定リンク構造を再生成: WordPressのデータベースから古いURL情報を更新して、新しいURL情報に反映させます。
4. リダイレクトルールを追加: .htaccessファイルにリダイレクトルールを追加し、添付ファイルページへの直接アクセスを解決します。
5. 定期的なモニタリング: パフォーマンスやセキュリティ上の問題がないか、定期的にチェックを行います。
関連記事: