Roshan’s Blogのエントリーから、URLをリダイレクト・リライトする場合の.htaccessの設定例を5つ紹介します。
5 useful url rewriting examples using .htaccess
「product.php?id=12」を「product-12.html」でアクセス
「product-12.html」を「product.php?id=12」にリライトします。
「product.php?id=12」を「product/ipod-nano/12.html」でアクセス
「product/ipod-nano/12.html」を「product.php?12」にリライトします。
「www.test.com」を「test.com」でアクセス
「www無しのURL」を「www有りのURL」にリダイレクトします。
「test.com/user.php?username=xyz」を「test.com/xyz」でアクセス
「test.com/xyz」を「test.com/user.php?username=xyz」にリライトします。
「test.com/new」を「test.com」でアクセス
「ルート直下のURL」を「サブフォルダ」にリダイレクトします。
例:test.com/new
参考
検索エンジン対策としては、ページの移転や重複するページがある場合、301リダイレクトを使用するように推奨されています。
- 重複するコンテンツ
[Google] - サイトのURLを変えたので、検索結果のURLを修正したい
[Yahoo!]
Post on:2008年3月26日




リライトの方向が全部逆では?
> hisaboh さん
すいません、ちょっと意味が分かりません。
hisabohさんがおっしゃってるのは
誤:「サブフォルダのもの」を「ルート直下」にリダイレクト
正:「ルート直下のもの」を「サブフォルダ」にリダイレクト
って事じゃないですかね?
> s さん
リライトの箇所ばかりを見てました。
リダイレクトのとこ、間違ってますね。
ありがとうございます。
うーん、リライト全部って、どういう意味だろう、、、
「product-12.html」に「product.php?id=12」をリライト
ってことかなぁ。
リライトの意味を逆に捉えていると話が分かりませんね。
どっちが正しいかは私は知りませんが。
ちょっと日本語としては分かりにくいかも。
個人的にはmod_rewriteってURLを変換(rewrite)してくれるって理解をしていました。(つまりhisabohさんとおそらく一緒)
> ker さん
ありがとうございます。
原文とは変更して、見出しに同じ方向を記載して、説明文で補足しました。