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 が原因の白い画面は、ファイル名を変更して一時無効化し、「設定→パーマリンク→保存」で再生成するだけで解決できます。

関連記事:

お気軽にご相談ください

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