DynagenでCCIEを目指す
Apache HTTP Server バーチャルホストの設定
最終更新:
it_certification
-
view
1. 履歴
- 2010/08/01 初稿
2. はじめに
- Apache HTTP Serverでバーチャルホストの設定を行い、複数のWEBサイトを起動させます。
- 本手順では、「ポートベース」のバーチャルホストを設定します。
- Dynamips, coLinux併存環境にて、QoS検証が可能な環境を構築する事を目的とします。
- 設定概要は以下の通りです。
port | DocumentRoot |
---|---|
10880 | C:\Program Files\Apache Software Foundation\Apache2.2\htdocs |
10881 | C:\Program Files\Apache Software Foundation\Apache2.2\htdocs10881 |
10882 | C:\Program Files\Apache Software Foundation\Apache2.2\htdocs10882 |
3. バーチャルホストの設定
3.1. ポートの設定
Listenするポート番号を定義します。httpd.confファイルでListenで始まる行を検索し、以下の通り変更します。
- 変更前
Listen 80
- 変更後
Listen 10880 Listen 10881 Listen 10882
3.2. バーチャルホスト設定ファイルの読み込み
バーチャルホスト設定が記述されている設定ファイルを読み込むよう変更します。httd.confファイルでhttpd-vhosts.confが含まれる行を検索し、以下の通り変更します。
- 変更前
#Include conf/extra/httpd-vhosts.conf
- 変更後
Include conf/extra/httpd-vhosts.conf
3.3. バーチャルホストの有効化
バーチャルホストを有効にする設定を記述します。extra\httpd-vhosts.confファイルを以下の通り変更します。
- 変更前
NameVirtualHost *:80
- 変更後
NameVirtualHost *:10880 NameVirtualHost *:10881 NameVirtualHost *:10882
3.4. 各バーチャルホストの設定
各バーチャルホストの設定を行います。QoS検証を行うのにそれほど複雑な設定は必要ないので、本手順ではDocumentRootとアクセス権のみを設定します。extra\httpd-vhosts.confファイルを以下の通り変更します。
- 変更前
<VirtualHost *:80> ServerAdmin webmaster@dummy-host.hoge.local DocumentRoot "C:/Program Files/Apache Software Foundation/Apache2.2/docs/dummy-host.hoge.local" ServerName dummy-host.hoge.local ServerAlias www.dummy-host.hoge.local ErrorLog "logs/dummy-host.hoge.local-error.log" CustomLog "logs/dummy-host.hoge.local-access.log" common </VirtualHost> <VirtualHost *:80> ServerAdmin webmaster@dummy-host2.hoge.local DocumentRoot "C:/Program Files/Apache Software Foundation/Apache2.2/docs/dummy-host2.hoge.local" ServerName dummy-host2.hoge.local ErrorLog "logs/dummy-host2.hoge.local-error.log" CustomLog "logs/dummy-host2.hoge.local-access.log" common </VirtualHost>
- 変更後
<VirtualHost *:10880> DocumentRoot "C:/Program Files/Apache Software Foundation/Apache2.2/htdocs" </VirtualHost> <VirtualHost *:10881> DocumentRoot "C:/Program Files/Apache Software Foundation/Apache2.2/htdocs10881" <Directory "C:/Program Files/Apache Software Foundation/Apache2.2/htdocs10881"> Order allow,deny Allow from all </Directory> </VirtualHost> <VirtualHost *:10882> DocumentRoot "C:/Program Files/Apache Software Foundation/Apache2.2/htdocs10882" <Directory "C:/Program Files/Apache Software Foundation/Apache2.2/htdocs10882"> Order allow,deny Allow from all </Directory> </VirtualHost>
4. バーチャルホストの確認
4.1. httpd.conf 構文チェック
Test Configurationを実行し、httpd.confの構文エラーがない事を確認します。
4.2. httpdの再起動
Apache HTTP Serverを再起動され、バーチャルホストの設定を読み込ませます。
4.3. バーチャルホストの構成確認
httpdに-Sオプションを付けて実行すると、バーチャルホストの構成を確認する事ができます。実行例は以下の通りです。
C:\>"C:\Program Files\Apache Software Foundation\Apache2.2\bin\httpd.exe" -S Warning: DocumentRoot [C:/Program Files/Apache Software Foundation/Apache2.2/htd ocs10881] does not exist Warning: DocumentRoot [C:/Program Files/Apache Software Foundation/Apache2.2/htd ocs10882] does not exist httpd.exe: Could not reliably determine the server's fully qualified domain name , using 192.168.200.100 for ServerName VirtualHost configuration: wildcard NameVirtualHosts and _default_ servers: *:10882 is a NameVirtualHost default server 192.168.200.100 (C:/Program Files/Apache Software Founda tion/Apache2.2/conf/extra/httpd-vhosts.conf:37) port 10882 namevhost 192.168.200.100 (C:/Program Files/Apache Software Foundation/Apache2.2/conf/extra/httpd-vhosts.conf:37) *:10881 is a NameVirtualHost default server 192.168.200.100 (C:/Program Files/Apache Software Founda tion/Apache2.2/conf/extra/httpd-vhosts.conf:33) port 10881 namevhost 192.168.200.100 (C:/Program Files/Apache Software Foundation/Apache2.2/conf/extra/httpd-vhosts.conf:33) *:10880 is a NameVirtualHost default server 192.168.200.100 (C:/Program Files/Apache Software Founda tion/Apache2.2/conf/extra/httpd-vhosts.conf:29) port 10880 namevhost 192.168.200.100 (C:/Program Files/Apache Software Foundation/Apache2.2/conf/extra/httpd-vhosts.conf:29) Syntax OK C:\>
4.4. index.htmlの配布
下記ディレクトリにindex.htmlを配置します。(Linux版の方はパーミッションにも注意して下さい)
virtual host | 配布先 | 備考 |
port 10880 | C:\Program Files\Apache Software Foundation\Apache2.2\htdocs\index.html | Apahceインストール時に自動的に作成されます |
---|---|---|
port 10881 | C:\Program Files\Apache Software Foundation\Apache2.2\htdocs10881\index.html | |
port 10882 | C:\Program Files\Apache Software Foundation\Apache2.2\htdocs10882\index.html |
4.5. ブラウザによる確認
下記URLをブラウザで閲覧し、各バーチャルホストのindex.htmlが見える事を確認します。
virtual host | url |
---|---|
port 10880 | http://localhost:10880/ |
port 10880 | http://localhost:10881/ |
port 10880 | http://localhost:10882/ |

添付ファイル