WordPressサイトが真っ白になる「死の白画面(WSOD)」の原因と復旧方法を、プラグイン競合からメモリ不足まで、FTPやデバッグ手順を交えて詳しく解説します。
こんな悩みありませんか?
- WordPressサイトを開いたら真っ白な画面で何も表示されない
- 管理画面にもログインできない状態になってしまった
- プラグインを更新した直後に画面が白くなった
- 「どこから手をつけていいかわからない」と途方に暮れている
WordPressユーザーなら一度は経験する可能性がある「死の白画面(White Screen of Death / WSOD)」。突然サイトが真っ白になると、まさにパニック状態になりますよね。
Fivenine Designでは20年以上Web制作を手がけてきましたが、この白画面トラブルは本当によく相談される問題の一つです。しかし、正しい手順を踏めば必ず復旧できるのも事実です。
真っ白な画面(WSOD)とは?
「死の白画面(White Screen of Death)」とは、WordPressサイトでPHPエラーが発生した際に、エラーメッセージの代わりに真っ白な画面だけが表示される現象です。
本来であればエラーメッセージが表示されるべきところを、WordPressのセキュリティ機能により隠しているため、このような状態になります。
なぜエラーが隠されるのか?
エラーメッセージには以下のような情報が含まれることがあります:
- サーバーの詳細情報
- ファイルパス
- データベース情報
これらの情報が悪意のある第三者に見られると、セキュリティリスクが高まるため、WordPress側で非表示にしているのです。
復旧作業前の準備
1. 冷静になる
まず大切なのは冷静になることです。あるクライアントでは、慌てて色々なファイルをいじってしまい、余計に状況を複雑にしてしまったケースがありました。
2. バックアップの確認
もしバックアップがある場合は、復旧作業と並行してバックアップからの復元も検討しましょう。ただし、最新の投稿やデータが失われる可能性があるため、まずは以下の手順を試してみることをお勧めします。
3. 必要なツール
復旧作業に必要なツールを準備しましょう:
- FTPクライアント(FileZilla等)
- テキストエディタ(メモ帳、Sublime Text等)
- サーバーのログイン情報
デバッグモードを有効にして原因を特定
真っ白な画面の原因を特定するため、まずはエラーメッセージを表示させましょう。
wp-config.phpの編集
- FTPでサーバーに接続
- WordPressのルートディレクトリにある
wp-config.phpをダウンロード - テキストエディタで開く
- 以下のコードを追加
// デバッグモードを有効化
define('WP_DEBUG', true);
define('WP_DEBUG_LOG', true);
define('WP_DEBUG_DISPLAY', true);
// エラー表示を強制的に有効化
ini_set('display_errors', 1);
ini_set('display_startup_errors', 1);
error_reporting(E_ALL);
- ファイルをサーバーにアップロード
- サイトを再読み込み
この設定により、具体的なエラーメッセージが表示されるようになります。
原因別の復旧方法
1. プラグイン競合の解決
最も多い原因がプラグインの競合です。特に複数のプラグインを同時に更新した場合によく発生します。
解決手順
- FTPでサーバーに接続
/wp-content/plugins/フォルダ名をplugins-disabledに変更- サイトが復旧するか確認
- 復旧した場合は、プラグインを一つずつ有効化
# コマンドラインの場合
mv plugins plugins-disabled
プラグインの個別確認方法
plugins-disabledフォルダをpluginsに戻す- 各プラグインフォルダを個別に名前変更
- 問題のあるプラグインを特定
あるクライアントでは、キャッシュプラグインとSEOプラグインの組み合わせで競合が発生していました。個別に無効化することで、原因を特定できました。
2. テーマの問題
現在のテーマを無効化
- FTPで
/wp-content/themes/にアクセス - 現在使用中のテーマフォルダ名を変更
- WordPressが自動的にデフォルトテーマに切り替わります
// または、wp-config.phpに追加してデフォルトテーマを強制使用
define('WP_DEFAULT_THEME', 'twentytwentyfour');
テーマのカスタマイズが原因の場合
多くの場合、functions.phpの記述エラーが原因です:
- PHP構文エラー(
;の付け忘れ等) - 重複する関数定義
- 存在しない関数の呼び出し
3. PHPメモリ不足の解決
WordPressサイトの成長に伴い、メモリ不足が発生することがあります。
メモリ制限の確認と増加
wp-config.phpに追加:
// メモリ制限を512MBに増加
ini_set('memory_limit', '512M');
.htaccessに追加:
# PHPメモリ制限
php_value memory_limit 512M
php_value max_execution_time 300
php_value max_input_vars 3000
4. .htaccessファイルの問題
.htaccessファイルの記述エラーも白画面の原因となります。
一時的な無効化
- FTPで
.htaccessを.htaccess-backupに名前変更 - サイトが復旧するか確認
- 復旧した場合は、.htaccessの記述を確認
よくある.htaccessエラー
# ❌ 間違った記述例
RewriteEngine On
RewriteRule ^(.*)$ index.php [QSA,L
# 閉じ括弧が不足
# ✅ 正しい記述
RewriteEngine On
RewriteRule ^(.*)$ index.php [QSA,L]
5. PHPバージョン非互換
古いWordPressやプラグインが新しいPHPバージョンに対応していない場合があります。
確認方法
サーバーの管理画面で現在のPHPバージョンを確認し、必要に応じて以前のバージョンに一時的に戻してみましょう。
// PHPバージョンを確認するファイルを作成
<?php
echo 'PHP Version: ' . PHP_VERSION;
phpinfo();
?>
データベースエラーの対処法
データベース関連のエラーの場合は、以下を確認しましょう。
wp-config.phpの設定確認
// データベース設定
define('DB_NAME', 'データベース名');
define('DB_USER', 'ユーザー名');
define('DB_PASSWORD', 'パスワード');
define('DB_HOST', 'localhost');
データベース修復
wp-config.phpに以下を追加:
// データベース自動修復を有効化
define('WP_ALLOW_REPAIR', true);
その後、https://yoursite.com/wp-admin/maint/repair.phpにアクセス。
重要:修復後は必ずこの行を削除してください。
復旧後の重要な作業
1. デバッグモードの無効化
サイトが復旧したら、セキュリティのため必ずデバッグモードを無効にします:
// wp-config.phpで設定を戻す
define('WP_DEBUG', false);
define('WP_DEBUG_LOG', false);
define('WP_DEBUG_DISPLAY', false);
2. バックアップの実行
復旧した状態で、すぐにバックアップを作成しましょう。
3. セキュリティチェック
- WordPress本体のアップデート
- プラグインのアップデート
- 不要なプラグインの削除
よくある失敗パターンと注意点
失敗パターン1:慌てて複数の対処を同時実行
あるクライアントでは、プラグイン無効化と.htaccess編集を同時に行い、どちらが効果的だったか分からなくなってしまいました。一つずつ順番に対処することが重要です。
失敗パターン2:バックアップを取らずに作業
ファイルを編集する前は、必ず元のファイルをバックアップしましょう。
失敗パターン3:デバッグモードの有効化したまま放置
デバッグモードを有効にしたまま放置すると、セキュリティリスクが高まります。復旧後は必ず無効化してください。
予防策:白画面を防ぐ日常管理
定期的なバックアップ
- 週1回の自動バックアップ設定
- 重要な変更前の手動バックアップ
ステージング環境での検証
本番環境に反映する前に、ステージング環境でのテストを推奨します。
プラグイン・テーマの管理
- 不要なプラグインの定期的な整理
- 更新前の互換性確認
- 信頼できる開発元からの導入
まとめ:まず何をすべきか
WordPressの真っ白な画面に遭遇したら、以下の順番で対処してください:
- 冷静になる:慌てずに一つずつ対処
- デバッグモード有効化:原因の特定
- プラグイン無効化:最も多い原因から確認
- テーマ確認:デフォルトテーマに切り替え
- メモリ・.htaccess確認:その他の一般的な原因をチェック
正しい手順を踏めば、ほとんどの場合は自力で復旧できます。
復旧できない場合は専門家にご相談を
ただし、以下のような場合は無理をせずに専門家にご相談ください:
- データベースが破損している疑いがある
- 複数の原因が重複していて特定が困難
- 重要なビジネスサイトで長時間停止できない
- FTPやファイル編集に不安がある
Fivenine Designでは、WordPress緊急復旧サービスを提供しています。20年以上の実績で培った技術力で、迅速かつ安全に復旧いたします。
「サイトが真っ白になって困っている」 「自分で作業するのが不安」 「すぐに復旧させたい」
このような状況でしたら、お気軽にご相談ください。まずは現在の状況をお聞かせいただければ、最適な解決策をご提案いたします。
神奈川のWeb制作会社 Fivenine Design
Laravel・WordPress・Next.js開発|20年以上の信頼と実績