htaccessで301リダイレクトする時のページとディレクトリを書く順番

記事公開日:
最終更新日:

This post is also available in: English-US (英語)

htaccessを使って、ディレクトリ以下のページを301リダイレクトしてサイト移転する際に、htaccessは上から読み込まれますので、301リダイレクトしたいページを先に、ディレクトリを後に記述しないと、上手く転送してくれませんよ...って話です。

例えば http://www.abcd.nets から http://www.efgh.nets にサイト移転する場合に、http://www.abcd.nets のindex.html(index.php)があるディレクトリに以下のようなhtaccessを設置しているとします。

<Files ~ "^.(htaccess|htpasswd)$">
deny from all
</Files>

Redirect permanent / http://www.efgh.nets/

order deny,allow

ここで http://www.abcd.nets/aaa/bbb.html というページを http://www.efgh.nets/aaa/bbb.html へ、ディレクトリを http://www.efgh.nets/aaa/ へと転送したい場合には、以下のような順番で記述します(wordpressのカテゴリと、そのカテゴリ以下のページみたいなイメージですね)。

<Files ~ "^.(htaccess|htpasswd)$">
deny from all
</Files>

Redirect permanent /aaa/bbb.html http://www.efgh.nets/aaa/bbb.html
Redirect permanent /aaa/ http://www.efgh.nets/aaa/

order deny,allow

About
Amelt.net,LLCの創業者で、費用対効果の高い統合webマーケティングによりビジネスパートナーとして継続的にサポート。詳しいより。ブログの更新情報TwitterLinkedIn、またRSSfeedlyにてお知らせしていますのでフォローよろしくお願い致します。