小技プログラミング

名前ベースのバーチャルホスト(VirtualHost)を設定

名前ベースのバーチャルホスト(VirtualHost)を設定する手順です。

バーチャルホストの設定をすると一つのサーバーで複数のWEBサイトを運営する事が出来るようになります。
バーチャルホストの設定には、IPベースと名前ベースの2種類ありますが、今回は名前ベースの設定方法です。
名前ベースというのは、サーバーに設定された一つのIPアドレスに対して複数のドメイン名を割り当てて、ドメイン名ごとにそれぞれ個別のディレクトリへアクセスさせる方法です。

Apacheの設定ファイルを編集します。

# vi /etc/httpd/conf/httpd.conf

以下青文字の部分を環境に合わせて設定します。

NameVirtualHost *:80 ← サーバーにIPが一つだけの場合はこのままで

<VirtualHost *:80> ← サーバーにIPが一つだけの場合はこのままで
ServerName test.domain.co.jp ← バーチャルホストで利用したいドメインを指定
ServerAlias www.test.domain.co.jp ← 別名を指定
DocumentRoot /home/testuser/www ← Webページを置くディレクトリのパスを指定
ErrorLog logs/test.domain.co.jp-error_log ← エラーログのファイル
CustomLog logs/test.domain.co.jp-access_log combined ← アクセスログのファイル
</VirtualHost>

(参考)
CustomLogにはcommonとcombinedを指定する事が可能です。
どちらが有効化されているかはhttpd.confで確認出来ます。
必要であれば有効化設定を変更します。

利用する方をコメント解除し、もう片方をコメント化します。

# vi /etc/httpd/conf/httpd.conf


---------------------------------------------------
#CustomLog logs/access_log common
CustomLog logs/access_log combined
---------------------------------------------------

設定ファイルの構文チェック
構文にエラーが無いか確認します。Syntax OKとなれば構文上は問題ありません。

# apachectl configtest
Syntax OK

設定の反映

# /etc/rc.d/init.d/httpd reload

更新日:2014/6/8