(Apache)複数ドメインで運用しているサイトを単一ドメインになるようリダイレクト
何やら多忙すぎて1ヶ月以上更新が滞ってしまいました。。。

Webサイトの一部を別ドメインに移したためリダイレクトさせてみたで mod_rewrite を使ったリダイレクトを書きました。

今回もそれに関連のある話ですが、あるWebサイトが hoge.jp , www.hoge.jp hoge.com どれでもアクセス可とします。
(DNSサーバの設定で同一サーバを見るようしています。VirtualHostは使っていません。)

これを www.hoge.jp でアクセスするように統一という話が出てきました。

調査すると、.htaccess - Rewriteにどんぴしゃな答えがありました。

Mod-Rewrite のリダイレクトを使って、下記のようにするとこれを実現できます。

Options +FollowSymLinks
RewriteEngine On
RewriteCond %{HTTP_HOST} ^(hoge\.jp)(:80)? [NC,OR]
RewriteCond %{HTTP_HOST} ^(hoge\.com)(:80)? [NC]
RewriteRule ^(.*) http://www.hoge.jp/$1 [R=301,L]

RewriteCond で条件を指定できるようです。
HTTP_HOST 変数にどのドメインでアクセスしてきたかの情報が入っているようですね。
複数条件も指定できるようで、今回はORを指定しています。


ちなみに、mod_rewriteを使うディレクトリでは「Options FollowSymLinks」を指定しないとエラーになるケースがあるので注意しましょう


参考:
mod_rewrite サンプル集/楽
RewriteCond - RewriteRuleの条件を設定
CPIレンタルサーバーでApache mod_rewriteの設定方法|ほっとのブログ
mod_rewriteを使うには「Options FollowSymLinks」が必要 kawama.jp:
[PR]
by Jehoshaphat | 2012-06-26 00:33 | サーバがらみ | Trackback | Comments(0)
トラックバックURL : http://jehupc.exblog.jp/tb/18254336
トラックバックする(会員専用) [ヘルプ]
※このブログはトラックバック承認制を適用しています。 ブログの持ち主が承認するまでトラックバックは表示されません。


<< (Apache)特定ファイルに... nslookup でDNSサー... >>