Apacheでバーチャルホスト(ネームベース)




バージョン 2.0.58

1台のWebサーバであたかも複数のサーバが存在するかのように見せることができる
その設定のことをバーチャルホストと呼ぶ

ここでは、ネームベースの設定を見ていく
つまり、1台のサーバには1つのIPアドレスを割り当て、
複数のURL(名前)でアクセスを受け付けた場合に、
それぞれのURL(名前)に対して各々別々の応答を返すことができる

これによって、IPアドレスを1つしか使うことなく、
別々のURL(名前)を持つ複数のサーバが存在するかのように見せることができる

1.サーバに1つのIPアドレス(1.1.1.1)を設定する

2.named.confにNameVirtualHostディレクティブを記述する
NameVirtualHost 1.1.1.1

3.named.confにVirtualHostディレクティブを記述する
<VirtualHost 1.1.1.1>
  ServerName www.virtual1.ne.jp
  DocumentRoot /var/apache/docs/virtual1
</VirtualHost>

<VirtualHost 1.1.1.1>
  ServerName www.virtual2.ne.jp
  DocumentRoot /var/apache/docs/virtual2
</VirtualHost>

4.apacheの再起動

この設定により、
www.virtual1.ne.jpにアクセスがあった場合、ServerName www.virtual1.ne.jpの設定に従って応答する
www.virtual2.ne.jpにアクセスがあった場合、ServerName www.virtual2.ne.jpの設定に従って応答する