index.htmlを違うページにリダイレクトする件

Last Updated on 2014年9月2日 by らくろぐ

飛び飛びなwordpress移行記。

ようやく別サイトの準備ができたので、もともとのサイトにアクセスしたときに
wordpress側にリダイレクトするように設定を始めた。

しかし、これがなかなか苦労したのでメモに残す。

リダイレクト設定

まず、もともとのサイトのトップページは
統一されているページ
/ユーザドメイン/
/ユーザドメイン/index.htm

工事中のページ
/ユーザドメイン/index.html

となっていた。
そのため、すべてと統一して
/ユーザドメイン/wordpressを置いたサイト/index.php
に移行させたいと思った。

結論

結果的に以下のように.htaccessを作成
RewriteRule ^$ http://ユーザードメイン/index.html [R=301,L]←①

RewriteEngine on
RewriteBase /doc
RewriteRule ^index.html http://ユーザードメイン/wordpressのディレクトリ/index.php [L,R=301] ←②
RewriteRule ^index.htm http://ユーザードメイン/wordpressのディレクトリ/index.php [L,R=301] ←③

①:index.htmあり、なしをindex.htmありに統一する記述
②:トップページindex.htmlをユーザードメイン/wordpressのディレクトリ/index.phpにリダイレクト
③:トップページindex.htmをユーザードメイン/wordpressのディレクトリ/index.phpにリダイレクト

【ここまでの経緯】
★トップページ内にメタタグでリダイレクトの記述をかくと、無限ループに入ってしまった。
★ファイル属性は666に設定
★.htaccessはdocの下に置いた。
→おそらくリダイレクトしたいディレクトリのトップページに置くのがよいらしい
★いろいろなパターンを調べてTRYしたが、そもそもファイル属性が間違っていて失敗していた可能性があり、使えなかった記述も、実は正しいものがあるかもしれない。

とにかく、これでリダイレクトできるようになりました。