[Apache].htaccessによるURL書き換え

ちょっと諸事情あって
「http://[サイトのURL]/xxxx/」でアクセスされたら
「http://[サイトのURL]/xxxx/abcd.html」へ転送する
みたいなことをやりたかったので.htaccessのURL書き換え(リダイレクト)の勉強をしました。


一般的なサイトひっこしの場合は.htaccess内に以下のように記述すればいいみたいです。

でも今回の場合はRedirect permanentを使っちゃうとリダイレクトがループしちゃうんで、
正規表現を使ったRewriteRuleを設定してやるのが良いみたいです。

この方法でとりあえずできました。
$は正規表現の「URLはここで終わっている…」の意味ですが
http://%{HTTP_HOST}あたりはもうちょっと良い書き方あるのかもしれません。

余談ですがRedirect permanentは永久転送(301 Redirect)なので、
多くのブラウザが転送をキャッシュ(記憶)してしまうようです。
動作確認のためにはキャッシュ削除ですね。知ってないとハマってしまいます。(体験した)
Redirect tempを使えば一時転送(302 Redirect)なのでブラウザもそのつもりで居てくれるぽいです。