.htaccessによるリダイレクトは、ドメイン移転や記事重複によるSEO評価の低下を防ぐなど様々な場面で使用されます。
しかし、.htaccessの書き方にそって、リダイレクトを試してみてもうまくいかない方はいませんか?
この記事では、WordPressで.htaccessによるリダイレクトができない時にチェックすべきことを紹介します。
.htaccessによるリダイレクトができない原因
もし、正しい形式で.htaccessにリダイレクトを記載してもうまくいかない場合は、リダイレクトを書く場所が間違っていることが原因になっている可能性があります。
次の例を参考に.htaccessの記載内容を確認してみましょう。
間違った.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
# WordPressセクションの後にリダイレクトを記述する
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule ^old_page/ http://example.com/new_page/ [L,R=301]
</IfModule>
正しい.htaccessの書き方
# WordPressセクションの前にリダイレクトを記述する
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule ^old_page/ http://example.com/new_page/ [L,R=301]
</IfModule>
# 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
とても単純なことですが、指摘されないと意外と気づかないことでもあります。.htaccessによるリダイレクトがうまくいかない場合は、記載内容を一度しっかりと確認してみましょう。

