WordPress 500エラーでパニック?まずは深呼吸してください
「Internal Server Error」の文字を見た瞬間、血の気が引く思いをされたことでしょう。
500エラーの影響は深刻で、発生から1時間で平均20-30%のユーザーが離脱し、ECサイトでは時間あたり数万円から数十万円の売上機会を失う可能性があります。しかし、適切な診断手順を踏めば、ほぼ確実に解決可能です。
この記事では、500エラーの原因特定から完全解決まで、初心者の方でも実行できる7つのステップを詳しく解説いたします。サーバー環境別の注意点も含めて、確実な解決方法をお伝えします。
500エラーの症状パターンを正確に把握しよう
一口に「500エラー」といっても、症状によって原因と対処法が大きく異なります。まずは現在の状況を正確に把握しましょう。
症状パターンの分類
症状パターン | 特徴 | 主な原因 | 緊急度 |
---|---|---|---|
完全エラー | サイト全体が500エラー | サーバー設定、プラグイン競合 | 高 |
間欠的エラー | 時々500エラーが発生 | リソース不足、負荷集中 | 中 |
特定ページエラー | 一部のページのみエラー | テーマファイル、個別設定 | 低 |
管理画面エラー | wp-adminのみアクセス不可 | プラグイン、権限設定 | 中 |
緊急度チェックリスト
- □ ECサイトや予約サイトが完全停止している
- □ 平日のビジネス時間帯に発生している
- □ Google Analytics で急激なアクセス低下を確認
- □ 顧客からの問い合わせが複数件入っている
- □ 管理画面にもアクセスできない状態
上記のうち3つ以上該当する場合は、自力復旧と並行して専門業者への緊急相談も検討してください。エーデルハーツでは24時間対応サービスをご提供しています。
500エラーが発生する5つの主要原因
サーバー環境別の対応ノウハウを活かし、500エラーの主要原因を解説します。
1. .htaccessファイルの設定ミス(発生率:約40%)
症状の特徴:
- サイト全体が突然アクセス不可になる
- .htaccessを編集した直後に発生
- 「Internal Server Error」のメッセージが表示
よくある原因:
リダイレクト設定の構文エラー、不正なRewriteRule、パーミッション設定の間違い
2. PHPメモリ制限の超過(発生率:約25%)
症状の特徴:
- 特定の操作(画像アップロード、プラグイン有効化)で発生
- アクセス集中時に頻発
- 間欠的にエラーが発生
よくある原因:
メモリ使用量の多いプラグイン、大容量ファイルの処理、同時アクセス過多
3. プラグインの競合・エラー(発生率:約20%)
症状の特徴:
- 新しいプラグインを有効化した直後
- プラグイン更新後に発生
- 管理画面の特定機能でエラー
よくある原因:
プラグイン同士の機能競合、古いプラグインとWordPressバージョンの非互換
4. ファイルパーミッションの問題(発生率:約10%)
症状の特徴:
- サーバー移転後に発生
- FTPでファイルアップロード後に発生
- 特定のディレクトリでのみエラー
よくある原因:
ファイルの権限設定が不適切(755や644以外)、所有者の設定ミス
5. データベース接続の問題(発生率:約5%)
症状の特徴:
- データベースメンテナンス後に発生
- wp-config.phpの設定変更後
- ホスティング会社のサーバー障害時
よくある原因:
データベース接続情報の間違い、DBサーバーの一時的な過負荷
確実に解決する7つのステップ
以下の手順を順番通りに実行することで、500エラーを安全かつ確実に解決できます。
ステップ1:エラーログの確認と原因特定
まず、サーバーのエラーログを確認して根本原因を特定します。
主要ホスティング会社別のログ確認方法:
ホスティング会社 | ログ確認方法 | ログファイルの場所 |
---|---|---|
エックスサーバー | サーバーパネル → ログファイル | /home/アカウント名/ドメイン名/log/ |
ロリポップ | ユーザー専用ページ → ログ | FTPの/logs/フォルダ |
さくらインターネット | サーバコントロールパネル → ログ | /home/アカウント名/www/log/ |
ConoHa WING | コントロールパネル → ログ | /var/log/httpd/error_log |
エラーログの読み方(初心者向け):
1 |
[日時] [error] [クライアントIP] [エラー内容] [ファイルパス] |
重要なのは「エラー内容」と「ファイルパス」の部分です。これらから原因を特定できます。
ステップ2:.htaccessファイルの確認
最も頻繁な原因である.htaccessの問題を確認します。
実行手順:
- FTPでサイトのルートディレクトリにアクセス
- .htaccessファイルをバックアップ
- .htaccessファイルを一時的にリネーム(例:.htaccess_backup)
- サイトにアクセスして復旧確認
- 復旧した場合:.htaccessが原因と判明
.htaccessが原因だった場合の対処:
最近追加した設定を段階的に削除し、どの行が問題かを特定します。
ステップ3:プラグインの一括無効化
プラグインが原因の場合を想定した確認作業です。
管理画面にアクセスできる場合:
- WordPress管理画面 → プラグイン
- すべてのプラグインを一括選択
- 「停止」を実行
- サイトの動作確認
管理画面にアクセスできない場合:
- FTPで
/wp-content/plugins/
フォルダにアクセス - 「plugins」フォルダを「plugins_disabled」にリネーム
- サイトの動作確認
復旧した場合は、プラグインを一つずつ有効化して問題のプラグインを特定します。
ステップ4:PHPメモリ制限の調整
メモリ不足が原因の場合の対処法です。
wp-config.phpに追加:
1 2 |
ini_set('memory_limit', '512M'); ini_set('max_execution_time', 300); |
.htaccessに追加:
1 2 3 |
php_value memory_limit 512M php_value max_execution_time 300 php_value upload_max_filesize 64M |
php.iniの編集(VPS・専用サーバーの場合):
1 2 3 |
memory_limit = 512M max_execution_time = 300 upload_max_filesize = 64M |
ステップ5:ファイルパーミッションの修正
適切なパーミッション設定を確認・修正します。
WordPress推奨パーミッション:
対象 | 推奨パーミッション | 説明 |
---|---|---|
フォルダ | 755 または 750 | ディレクトリの標準設定 |
PHPファイル | 644 または 640 | wp-config.php、index.php等 |
.htaccess | 644 | 設定ファイル |
wp-config.php | 600 または 644 | セキュリティ重要ファイル |
一括修正コマンド(SSH接続可能な場合):
1 2 |
find /path/to/wordpress/ -type d -exec chmod 755 {} \; find /path/to/wordpress/ -type f -exec chmod 644 {} \; |
ステップ6:WordPressコアファイルの再アップロード
WordPressコアファイルの破損が疑われる場合の対処です。
実行手順:
- WordPress公式サイトから最新版をダウンロード
- wp-config.phpとwp-contentフォルダ以外を一時バックアップ
- 新しいWordPressファイルをアップロード
- wp-config.phpとwp-contentを元に戻す
- 動作確認
注意点:
この作業は必ずバックアップを取ってから実行してください。
ステップ7:データベースの整合性確認
最終段階として、データベースの問題を確認します。
WordPress標準機能での修復:
- wp-config.phpに
define('WP_ALLOW_REPAIR', true);
を追加 - ブラウザで
サイトURL/wp-admin/maint/repair.php
にアクセス - 「データベースを修復する」をクリック
- 完了後、追加したコードを削除
phpMyAdminでの確認(上級者向け):
- phpMyAdminにログイン
- WordPressデータベースを選択
- 「すべてのテーブルを選択」
- 「チェック」または「修復」を実行
復旧後の安定性確認テスト
500エラーが解決した後は、以下のテストで安定性を確認しましょう。
基本動作確認チェックリスト
- □ トップページの正常表示
- □ 管理画面へのログイン
- □ 投稿・ページの作成・編集
- □ メディアライブラリでの画像アップロード
- □ プラグインの有効化・無効化
- □ テーマの変更
- □ コメント機能(該当する場合)
- □ 問い合わせフォーム(該当する場合)
負荷テストの実施
同時アクセスによる再発を防ぐため、以下のツールでテストを実施します:
- GTmetrix:ページ読み込み速度とパフォーマンス
- Pingdom:レスポンス時間の測定
- Google PageSpeed Insights:総合的なパフォーマンス評価
再発防止のための予防策
500エラーの再発を防ぐため、以下の予防策を実施してください。
1. 定期的なバックアップ体制の構築
推奨バックアップ頻度:
- ファイルバックアップ:週1回
- データベースバックアップ:日次
- 重要な変更前:即時
2. サーバーリソースの監視
以下の項目を定期的にチェックしましょう:
- メモリ使用量
- CPU使用率
- ディスク容量
- 同時接続数
3. プラグイン・テーマ管理のルール化
安全な更新手順:
- ステージング環境での事前テスト
- バックアップの作成
- 本番環境での更新
- 動作確認
- 問題があれば即座にロールバック
エーデルハーツからの専門家アドバイス
緊急時の判断基準:
上記7つのステップを試して1時間以内に解決しない場合は、専門業者への依頼を強く推奨します。不適切な作業により、データ損失のリスクが高まる可能性があります。
サーバー環境別の注意点:
- 共用サーバー:他のサイトの影響を受ける場合があるため、ホスティング会社への確認も必要
- VPS:root権限での作業が可能なため、より詳細な原因調査が可能
- クラウド:オートスケーリング設定の確認が重要
当社の緊急対応実績:
24時間対応サービスにより、夜間・休日の緊急事態にも迅速に対応いたします。平均復旧時間1.5時間で、ビジネスへの影響を最小限に抑えます。
500エラーでお困りの際は、緊急対応サービスもご利用ください。
まとめ:500エラーは正しい手順で必ず解決できる
WordPress 500エラーは確かに深刻な問題ですが、体系的なアプローチにより確実に解決可能です。
解決のポイント:
- エラーログで原因を正確に特定
- 7つのステップを順番通りに実行
- 作業前のバックアップは必須
- 1時間で解決しない場合は専門家に相談
- 解決後は予防策の実施
エーデルハーツでは、500エラーをはじめとするWordPressの技術的問題に対し、小回りの利く対応でお客様をサポートしています。今回の記事で解決できなかった場合や、今後の安定運用をお考えの場合は、お気軽にお問い合わせください。