Apache で「Virtual Host」(バーチャルホスト)を試してみよう!
Apache で「Virtual Host」(バーチャルホスト)を試してみよう!
Virtual Hostとは、1つのサーバコンピュータで複数のドメインを運用する技術のことです。
これはどういうことか?
http://ja.wikipedia.org/wiki/%E3%83%90%E3%83%BC%E3%83%81%E3%83%A3%E3%83%AB%E3%83%9B%E3%82%B9%E3%83%88
通常はWebサーバやメールサーバを運用するのにドメインの数以上のサーバコンピュータが必要となる。バーチャルホストを利用すると1つのサーバコンピュータで複数のドメインを運用することができ、サーバコンピュータの数を減らし運用のコストを下げることができる。また、後述する名前ベースバーチャルホストの場合はIPアドレスも節約することができる。 また、ドメインの追加も容易で、小規模Webサイトの運営や安価なレンタルサーバサービスなどでの利用が盛んである。
引用のみで恐縮ですが、とまぁ、そういうもので、便利なものなんです。
本例は、とりあえずローカルでテスト作業するときなど、手間を省くために個人的に設定したものであり、
詳細や厳密なことについては、その他のサイトにゆだねます。予めご了承ください。
本例では、名前ベースバーチャルホスト、という技術を試して見ます。
とりあえず、さっそく説明していきたいと思います。
* * *
まず、本例のテスト環境をざっと説明します。
テスト環境は、ローカルマシン(Windows XP Pro)にapacheがインストールされた状態です。
本例では、xamppを使っています。
インストールディレクトリはC直下です(C:\xampp)。
これと同じ環境にしていただけると、あまり知識の無い方でも
かなりスムースに読み進められると思います。
ある程度、知識をお持ちの方であれば、適当に読み替えて設定いただけると思います。
次に、本例の目的を説明します。
xamppを使ってapacheがインストールされapacheの起動状態であれば、
ブラウザからhttp://localhost/にアクセスすると、ページが表示できるかと思います。
すぐにhttp://localhost/xampp/へリダイレクトされ、ページが表示されているものと思います。
これは、実際には C:\xampp\htdocs\xampp\index.php を見ています。
http://localhost/
は、つまり
C:\xampp\htdocs\
です。
ですので、C:\xampp\htdocs以下にファイルをおけば、
ブラウザからアクセスできます。
たとえば、C:\xampp\htdocs直下に
test.htmlを置くと
http://localhost/test.html
でアクセスできます。
また、扱うファイルが多くなってくれば
ディレクトリで区切ってファイルを置くことになるでしょう。
C:\xampp\htdocs\apple\index.html
などの場合は
http://localhost/apple/
で、アクセスできるわけです。
。。。
この
http://localhost/
という部分ですが、ここは常に変わりません。
これは、ドメイン名と言われる部分で、
通常、1つのサーバソフトウェア(つまり、Apache)に対して
扱えるドメインは1つです。
そこで先ほどの
C:\xampp\htdocs\apple\index.html
http://localhost/apple/
ですが、もちろん、このままでも問題ないのですが、
これが、もしかして
C:\work\apple\index.html
http://apple/
などとできるようになれば、もっと便利で実用的だと思いませんか?
本記事ではこれを実現します。
それでは、実際の説明をはじめます。
* * *
まず、C:\xampp\apache\conf\httpd.confにある、
httpd.confをエディタ開いてください。
このファイルの最後尾に
<VirtualHost *:80>
ServerAdmin webmaster@dummy-host2.localhost
DocumentRoot “C:\work"
ServerName work
ErrorLog “logs/make-error.log"
CustomLog “logs/make-access.log" common
<Directory “C:/work">
Options FollowSymLinks IncludesNoExec Indexes
AllowOverride All
Deny from none
</Directory>
</VirtualHost>
<VirtualHost *:80>
ServerAdmin webmaster@dummy-host2.localhost
DocumentRoot “C:\work\apple"
ServerName apple
ErrorLog “logs/make-error.log"
CustomLog “logs/make-access.log" common
<Directory “C:/work/apple">
Options FollowSymLinks IncludesNoExec Indexes
AllowOverride All
Deny from none
</Directory>
</VirtualHost>
を追記して保存します。
次に、
C:\WINDOWS\system32\drivers\etc
にある、hostsをエディタ開いてください。
127.0.0.1 localhost
のあとに、
127.0.0.1 work
127.0.0.1 apple
を追記して保存します。
そして、apacheを再起動してください。
これでOKです!
C:\work\apple\
に何かファイルを置いてアクセスしてみてください。
以上です。
* * *
●参考サイト
Apache バーチャルホスト説明書 – Apache HTTP サーバ
http://httpd.apache.org/docs/2.2/vhosts/
Webサーバ Apache2.2におけるバーチャルホストの使用方法
バーチャルホストによる複数サイトの同時運用(1/2)
http://www.atmarkit.co.jp/flinux/rensai/apache08/apache08a.html
●当サイト関連記事
私なりにまとめた、インターネットにおける、ドメイン名とホスト名の意味を知ることに限った説明。
http://tech.kimihiko.jp/article/26123790.html
apache2.2 + php5.2.1 + VISTA インストールメモをざっくばらんに。
http://tech.kimihiko.jp/article/4536555.html
xampp1.7.0からPHP5しか入っていないので、1.6.8の利用がおすすめ。
http://tech.kimihiko.jp/article/26107230.html
tag:apache アパッチ バーチャルホスト