Apache mod_rewrite 設定覚書

hogehoge.jp でアクセスしてきたら、www.付きにURLにリダイレクトする
Apache mod_rewrite の設定。


RewriteEngine On
RewriteCond %{HTTP_HOST} !^www\.hogehoge\.jp
RewriteRule .* http:/ /www. hogehoge.jp$0 [QSA,NE,R=301,L]

1行目で RewriteEngineをONにする。

2行目では httpヘッダの ホスト行が
www.hogehoge.jp だったら、無視する。という条件。

3行目は www無しのURL hogehoge.jpの後ろが あった場合は
変換後のURLの後ろにくっつけるという処理。らしい。

.* が hogehoge.jpの後ろに付いてきたURLを指す。
$0がそれを入れる変数。らしい。

301というのは httpレスポンスの301を使ってリダイレクトする。という意味。

例えばだけど、hogehoge.jp でServerNameを設定している場合は、
www.hogehoge.jp でリクエストが来ても受け付けるように
ServerAlias で www.hogehoge.jp を設定しておく必要があるので注意する。