WordPressでリダイレクトが効かない! そんなときに確認すること
WordPressで作ったWebサイトをリダイレクトさせた際に、「.htaccess にしっかり記述したのに、トップページしかリダイレクトされない」なんてことはありませんか?
何度見返しても、リダイレクトの書き方は間違っていないのに・・・。
そんなときは、書く順番を確認してみましょう!
WordPressでリダイレクトを書く順番
デフォルトの .htaccess には以下のような記述があると思います。
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /typecloud/
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /typecloud/index.php [L]
</IfModule>
# END WordPress
リダイレクトの記述はこれより下に書いてはいけません。
例えば・・・
RewriteEngine on
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R,L]
# 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
このように「# BEGIN WordPress」より上に書きましょう。
これで下層ページも https へリダイレクトされます。