2026年5月20日
2026年5月20日
.htaccessが原因で白い画面になる場合の解決方法
はじめに
.htaccess ファイルはWordPressのURL(パーマリンク)制御やセキュリティ設定に使われる重要なファイルです。このファイルが破損したり、誤った設定が追加されると白い画面や500エラーが発生します。
症状・確認方法
- パーマリンク設定を変更した後から白い画面になった
- セキュリティプラグインが
.htaccessを編集した後からエラーが発生した .htaccessに手動でコードを追加した後から問題が発生した
解決手順
ステップ1:.htaccessの内容を確認する
FTPで WordPressのルートディレクトリにある .htaccess を開きます。
正常なWordPressの.htaccess:
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress
この内容と大きく異なる場合や、末尾に見慣れないコードが追加されている場合は問題の可能性があります。
ステップ2:.htaccessを一時的に無効化する
FTPで .htaccess のファイル名を変更します:
.htaccess → .htaccess_backup
サイトが表示されるようになれば、.htaccess が原因です。
ステップ3:.htaccessを再生成する
管理画面にアクセスできる場合:
1. 設定 → パーマリンク を開く
2. 何も変更せずに「変更を保存」をクリック
これで .htaccess が自動的に再生成されます。
管理画面にアクセスできない場合は、FTPで .htaccess を新規作成し、上記の正常な内容を貼り付けます。
ステップ4:サブディレクトリにインストールしている場合
WordPressをサブディレクトリ(例:/blog/)にインストールしている場合は、RewriteBase の値を変更する必要があります:
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /blog/ ← サブディレクトリ名に変更
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /blog/index.php [L]
</IfModule>
# END WordPress
ステップ5:Nginxサーバーの場合
Nginxサーバーでは .htaccess は無視されます。同等の設定をNginxの設定ファイルに記述する必要があります。ホスティング会社にWordPress用の設定を確認してください。
注意事項
.htaccessの変更前には必ずバックアップを取ってください- セキュリティプラグインが自動で
.htaccessを書き換えることがあります - Nginxサーバーでは
.htaccessは動作しません
まとめ
.htaccess が原因の白い画面は、ファイル名を変更して一時無効化し、「設定→パーマリンク→保存」で再生成するだけで解決できます。
関連記事: