ROUTE 3390

備忘録的な用途で書いていますが、どなたかの役に立つ事があれば嬉しいです。

複数ドメインの設定

Magentoでは1つの管理画面で複数ショッピングサイトを管理する事が出来ますが、
ショッピングサイト毎にドメインを変える事も可能です。


管理画面よりウェブサイトを作成し、ストアとストアビューも必要なだけ作成します。
次に各ウェブサイト毎にルートカテゴリを作成する必要があります。
公開してよければ、各ウェブサイトを「有効」にします。


ここまでは通常の複数ストア登録です。


最後にドメインによる振り分け設定を行います。
やり方はいくつかあるのですが、サービスのルートディレクトリ下にあるindex.phpを参照して下さい。


最後尾にこのように記述されています。
Mage::run($mageRunCode, $mageRunType);


このRunCodeにはウェブサイトを作成した時に定めたコードを、
RunTypeには'website'という文字列をセットする必要があります。


では実際どうするか。


PHPでは $_SERVER['HTTP_HOST'] でユーザーがアクセスしてきたドメインを取得できます。
ドメインによって$mageRunCodeにセットする文字列を変えてやればOKです。


他には、apachehttpd.confとかでセットしちゃう方法もあります。
index.phpでは $_SERVER['MAGE_RUN_CODE'] を$mageRunCodeにセットしてるわけですから、
バーチャルホスト毎に環境変数を上書きしちゃえばいいんですね。