Amazon EC2 VirtualHosts の設定ではまる。(vhost, vhosts)

amazon のEC2でvertualhostの設定をしたところ、半日はまってしまった。
ec2は、 Elastic IPという固定IPが、(現時点で) EC2のインスタンス1つにつき1つもらえるので
それを元に、(頂いたIPが 111.222.333.444 とする)

NameVirtualHosts 111.222.333.444:80
<VirtualHost 111.222.333.444:80>
ServerName www.example.com
DocumentRoot “/var/www/vhosts/”
</VirtualHost>
<VirtualHost 111.222.333.444:80>
ServerName www2.example.com
DocumentRoot “/var/www/vhosts/”
</VirtualHost>

として、 www.exampel.com www2.exampel.com を立ち上げようとしても上手く行かない
VirtualHostの中のDocumentRootを見に行っってくれないのである
#apachectl -t -D DUMP_VHOSTS
でやっても、エラーも無く返ってくるのであるが上手く行かない。で正解は

NameVirtualHosts *:80
<VirtualHost *:80>
ServerName www.example.com
DocumentRoot "/var/www/vhosts/"
</VirtualHost>
<VirtualHost *:80>
ServerName www2.example.com
DocumentRoot "/var/www/vhosts/"
</VirtualHost>

とすると、うまくいく。つまりはワイルドカードを使ってしまえって事。
たぶん、仮想化の仕組み上、Elastic IPとサーバーは結びついてはいるものの
内部の設定ファイルに Elastic IPを書いても上手い事行かないんじゃないかと勝手に想像しています。
4時間も使ってしまったよ・・・。

2009.03.18

Category: Os / Tags:

Comments

No Comments

Leave a reply

Name *

Mail *

Website