Scientific Linux 6
Sponsored Link

バーチャルホストの設定2011/03/20

 
仮想環境では1台の物理マシン内で仮想Webサーバーを複数立ち上げ、複数のドメイン名で運用することは当然可能ですが、 管理面の面倒さも出てくるので、複数のドメイン名を運用したいだけであれば、やはりこのバーチャルホストの方が手っ取り早いです。
以下の例では、既存のドメイン名を「srv.world」( ルートディレクトリは /var/www/html ), バーチャルホストで運用するドメイン名を「virtual.host」( ルートディレクトリは /home/fermi/public_html )として設定し、 両者のドメイン名でアクセスできるようにしてみます。事前に自サーバーでDNSに新たに設定するドメイン名のゾーン情報の登録が必要です。 さらに、外部からもアクセスできるようにするのであれば、新たに割り当てるドメイン名をレジストラでDNS登録しておく必要があります。
[1] Apache にバーチャルホストの設定をします。
[root@www ~]#
vi /etc/httpd/conf/httpd.conf
# 990行目:コメント解除

NameVirtualHost *:80
# 最終行:元ドメイン用追記

<VirtualHost *:80>
   DocumentRoot /var/www/html
   ServerName www.srv.world
</VirtualHost>
# 最終行:追加ドメイン用追記

<VirtualHost *:80>
   DocumentRoot /home/fermi/public_html
   ServerName www.virtual.host
   ServerAdmin webmaster@virtual.host
   ErrorLog logs/virtual.host-error_log
   CustomLog logs/virtual.host-access_log combined
</VirtualHost>
[root@www ~]#
/etc/rc.d/init.d/httpd restart

Stopping httpd:
[  OK  ]

Starting httpd:
[  OK  ]

[2] 元ドメイン「srv.world」のテストページにアクセスできるか確認します。 アクセスできればOKです。
[3] 追加ドメイン「virtual.host」用のテストページを作成し、Webブラウザでアクセスしてバーチャルホストが効いているか動作確認してみます。 以下のようなページが表示されればOKです。
[fermi@www ~]$
vi ./public_html/index.cgi
#!/usr/local/bin/perl

print "Content-type: text/html\n\n";
print "<html>\n<body>\n";
print "<div style=\"width: 100%; font-size: 40px; font-weight: bold; text-align: center;\">\n";
print "Virtual Host Test Page";
print "\n</div>\n";
print "</body>\n</html>\n";

[fermi@www ~]$
chmod 705 ./public_html/index.cgi
関連コンテンツ