一つのIPアドレスで複数のWebサイトを運営するapacheの設定
サーバに割り当てられたIPアドレスは一つだけど、DNSの設定で割り当てたサブドメインごとにWebサイトを構築したい場合のメモ。
例えば
http://cotv.exbridge.jp/
http://hoge.exbridge.jp/
は同じIPに名前解決されるけど、それぞれ別のWebサイトとして表示したい場合、webサーバ(apache)のバーチャルホストの設定をしてあげることで実現できます。詳しくはここのドキュメントで。
以下設定例
NameVirtualHost *:80
<VirtualHost *:80>
DocumentRoot /www/example1
ServerName cotv.exbridge.jp
# Other directives here
</VirtualHost><VirtualHost *:80>
DocumentRoot /www/example2
ServerName hoge.exbridge.jp
# Other directives here
</VirtualHost>
@ITの記事も参考に。
第8回 バーチャルホストによる複数サイトの同時運用
<2009/05/19 追記>
Wordpress MUなどでサブドメインとして各ユーザのブログURLを発行するシステムの場合(例えばhttp://se-suganuma.hoge.exbridge.jp/とか)、ServerNameの他にServerAliasを使って設定する。
DNSには
a *.hoge 123.456.789.123
と書いておいてapacheのconfigファイルには
<VirtualHost *:80>
DocumentRoot /www/example2
ServerName hoge.exbridge.jp
ServerAlias *.hoge.exbridge.jp
# Other directives here
</VirtualHost>
と記述する。
これで***.hoge.exbridge.jpのアドレスは全て/www/example2を参照するようになる。