====== コンテキストを利用したヴァーチャルホスト ======
===== コンテキストを作成する =====
システム -> コンテキストと進み、新しいコンテキストを作成します。
* site_start - TopページのドキュメントID
* base_url - "/" (引用符なし)を設定します。
* http_host - "ホスト.ドメイン名" を設定します。
* site_url - "http:%%//%%ホスト.ドメイン名/" を設定します。末尾のスラッシュを忘れないように。((ここの設定は (scheme + http_host + base_url ) です))
* site_name - サイトの名前
//
※コンテキスト固有の設定も追加できます。例えば、 error_page 、 unauthorized_page、default_template//
===== ヴァーチャルホストを作成する =====
apacheの場合なら、こんな感じでしょう。
ServerName hogehoge.example.com
ServerAdmin Virtual@example.com
DocumentRoot /usr/local/............/Virtual/
............
===== ア)Index.php内で分岐する場合 =====
以下の行を探して編集してください。
$modx->initialize('web');
↓
switch(strtolower(MODX_HTTP_HOST)) {
case 'example.com':
case 'www.example.com':
$modx->initialize('example.com');
break;
default:
$modx->initialize('web');
break;
}
===== イ)ヴァーチャルホストのrootを作る =====
"Virtual/"を元々modxのインストールしてある場所に作成します。
ここに、modxのルートから以下のファイルをコピーします。
* index.php
* .htaccess
* config.core.php
これらを編集します。
==== index.php ====
以下の行を探して編集してください。
$modx->initialize('web');
↓
$modx->initialize('vurtual');
==== .htaccess ====
通常は編集する必要はありませんが、以下の行のようになっていることを確認してください。((コンテキスト設定のbase_urlと一致していなければなりません))
RewriteBase /
==== config.core.php ====
以下の部分を編集
define('MODX_CORE_PATH', dirname(__FILE__) . '/core/');
または
modxのルートのcoreへのシンボリックリンクを作成
===== 確認 =====
コンテキストの配下にドキュメントを作って表示させてみましょう。\\
また、ドキュメント間でlink((%%[[~xx]]%%形式のもの))も作ってみましょう。