4.3.1 サーバ名に基づくバーチャルホスト
サーバ名に基づくバーチャルホストは,一つのIPアドレスに対して複数のホスト名をDNSサーバなどで定義しておき,クライアントからそのホスト名でアクセスすることで,複数ホストのように見せます。ネットワークインタフェースを複数設定する必要はありません。サーバ名に基づくバーチャルホストでは,SSL対応ホストと非SSL対応ホストの組み合わせ,または異なる複数のSSL対応ホストの組み合わせでは構築できません。それらの組み合わせで構築する場合は,IPアドレスに基づくバーチャルホストで構築してください。サーバ名に基づくバーチャルホストの場合には,<VirtualHost>ディレクティブにIPアドレスを明示的に指定してください。
- (例)1台のサーバマシン(IPアドレス:172.17.40.10)上の一つのWebサーバでポートを一つオープンし,Webブラウザからのリクエストに応じてホストを切り替える運用をする。
-
- Webブラウザからの要求が,http://www1.xxx.soft.hitachi.co.jp/の場合
-
<Application Serverのインストールディレクトリ>/httpsd/htdocs1/index.html(DirectoryIndexの指定がindex.htmlの場合)を参照します。
- Webブラウザからの要求が,http://www3.xxx.soft.hitachi.co.jp/の場合
-
<Application Serverのインストールディレクトリ>/httpsd/htdocs3/index.html(DirectoryIndexの指定がindex.htmlの場合)を参照します。
ただし,この方法はWebブラウザからのリクエスト中のHostヘッダで,"Host: www1.xxx.soft.hitachi.co.jp"のようにホスト名(必要に応じてポート番号)を指定してきた場合だけ利用できます。古いWebブラウザや,簡易タイプのWebブラウザでは利用できないことがあるので注意が必要です。その場合,最も上位に記述された<VirtualHost>ブロックの指定(この例ではwww1.xxx.soft.hitachi.co.jp)が有効になります。
Listen 80 …1. <VirtualHost 172.17.40.10> …2. DocumentRoot "<Application Serverのインストールディレクトリ>/httpsd/htdocs1" …3. ServerName www1.xxx.soft.hitachi.co.jp …4. </VirtualHost> <VirtualHost 172.17.40.10> …5. DocumentRoot "<Application Serverのインストールディレクトリ>/httpsd/htdocs2" …6. ServerName www2.xxx.soft.hitachi.co.jp …7. </VirtualHost> <VirtualHost 172.17.40.10> …8. DocumentRoot "<Application Serverのインストールディレクトリ>/httpsd/htdocs3" …9. ServerName www3.xxx.soft.hitachi.co.jp …10. </VirtualHost>
-
ポート番号は一つ
-
バーチャルホスト1の定義
-
ルートディレクトリの定義
-
サーバ名1の定義
-
バーチャルホスト2の定義
-
ルートディレクトリの定義
-
サーバ名2の定義
-
バーチャルホスト3の定義
-
ルートディレクトリの定義
-
サーバ名3の定義
注 www1.xxx.soft.hitachi.co.jp,www2.xxx.soft.hitachi.co.jp,www3.xxx.soft.hitachi.co.jpは,DNSサーバなどに172.17.40.10ホストのホスト名として登録されていなければなりません。