kazmax - Linux で自宅サーバー

apache2.2 バーチャルホストの設定 前編

バーチャルホストとは、1台のマシン上で2つ以上のウェブサイトを扱う方法の事をいいます。 例えば、www1.kazmax.zpp.jpというサイトと、www2.kazmax.zpp.jp というサイトを1つのマシン上で運用する事ができます。

また、バーチャルホストには2種類あり、各ウェブサイトに違う IP アドレスがある「IP ベース」と呼ばれるバーチャルホストと、 1つの IP アドレスに、複数の名前がある「名前ベース」と呼ばれるバーチャルホストがあります。

バーチャルホストでこんな事ができる!

「IP ベース」のバーチャルホストを利用すれば、WAN側からと、LAN側からのアクセスによって表示させるサイトを切り替えるといった事などができるようになります。 まぁ、NICを2つ以上つけるとか、IPを2つ以上割り振る必要はありますけど。

また、「名前ベース」のバーチャルホストを利用すれば、ドメインを複数所持し、 IPを同じマシンに設定し、1つのマシンで複数のサイトを運用する事などが可能となります。 普段自鯖で複数のIPを1つのマシンに割り当ててる人は少ないと思うので、「名前ベース」のバーチャルホストの設定の仕方について説明します。

1つだけ注意事項!

バーチャルホストを作成すると、既存のサイトがなくなります!
すでにあるウェブサーバにバーチャルホストを追加する場合は、 元々存在していたサイトもバーチャルホストに設定しなければなりません! 気をつけて下さい。

Last Update : 2006年09月27日

apache2.2 バーチャルホストの設定の手順

  1. httpd.conf でバーチャルホスト設定ファイルを読み込む設定
  2. httpd-vhosts.conf でバーチャルホストを設定
  • Directoryディレクティブを設定
  • バーチャルホスト設定の確認
  • apache を再起動
  • 複数のバーチャルホストを設定するには
  • >> apache2.2 バーチャルホストの設定 後編

    設定の項目数が多そうですが、実際はめっちゃ少ないです!
    書くとこれだけです。

    httpd.conf

    # Virtual hosts
    # Include conf/extra/httpd-vhosts.conf
     ↓ 「 # 」を削除
    # Virtual hosts
    Include conf/extra/httpd-vhosts.conf
    

    httpd-vhosts.conf

    緑の部分が追加、変更点です。

    NameVirtualHost *:80
    
    <VirtualHost *:80>
    DocumentRoot /home/test_html
    ServerName kazmax.zpp.jp
    
    <Directory "/home/test_html">
        Options FollowSymLinks
        AllowOverride None
        Order allow,deny
        Allow from all
    </Directory>
    
    ErrorLog logs/kazmax.zpp.jp-error_log
    CustomLog logs/kazmax.zpp.jp-access_log common
    
    </VirtualHost>
    

    ページが長くなりそうなので、続きは後編へ。

    ドメインを1つ持てば、サブドメインで複数サイト運用!とかできるので、バーチャルホストお勧めです。 ぜひ、お試しあれ。

    Apache 関連記事