VirtualHost
最終更新日時:2007-03-01 17:53:33
Apache
Apache
VirtualHost を使うことで、特定のドメイン名や IP アドレスに対しての設定を行うことが可能です。
つまり、複数ドメインや複数 IP を持つサーバ内にて Apache を動かした時に、ドメイン名や IP によって異なるコンテンツを提供したりということが可能になります。
もちろん、複数の Apache を起動してもそういうことはできますが、VirtualHost を使用すれば単体の Apache でも可能です。
ローカル向け設定
複数のグローバルな IP やドメインを持たなくても VirtualHost の使い道はあります。
例えばローカル向けの設定です。
VirtualHost を使用することにより、インターネット向けの設定とイントラネット(ローカル)向けの設定とを分けることが可能です。
NameVirtualHost * # グローバル <VirtualHost *> ServerName lightly.plala.jp DocumentRoot /home/httpd Addhandler cgi-script .cgi <Directory "/home/httpd"> Options FollowSymLinks Includes AllowOverride All Order allow,deny Allow from all </Directory> CustomLog "|/usr/local/apache/bin/rotatelogs /logs/access_log.%Y%m%d 86400 540" combined ErrorLog "|/usr/local/apache/bin/rotatelogs /logs/error_log.%Y%m%d 86400 540" </VirtualHost> # ローカル <VirtualHost *> ServerName intranet DocumentRoot /home/httpd-local <Directory "/home/httpd-local"> Options Indexes FollowSymLinks Includes AllowOverride All Order allow,deny Allow from 192.168.0. </Directory> CustomLog "|/usr/local/apache/bin/rotatelogs /logs/local_access_log.%Y%m%d 86400 540" combined ErrorLog "|/usr/local/apache/bin/rotatelogs /logs/local_error_log.%Y%m%d 86400 540" </VirtualHost>
VirtualHost では ServerName によってマッチングを行うので、上記の設定では、http://lightly.plala.jp/index.html は /home/httpd/index.html を http://intranet/index.html は /home/httd-local/index.html を参照するようになります。