mod-myvhostはApacheモジュールのオープンソース・ソフトウェア。Apacheの設定はhttpd.confで行う。テキストファイルベースなので分かりやすいが、ASPなどでサービスを提供しようと思った時に、設定がシステムから柔軟に変更できればと思うことがある。

ピクチャ 432.png

設定はこんな感じ

 

例えばユーザごとにVirtualHostを分ける場合だ。サブディレクトリで命名規則を設けて行う方法もあるが、ユーザ数が増えればそれも苦しい管理になる。そこで使ってみたいのがmod-myvhostだ。

mod-myvhostはVirtualHostの設定をMySQL上で管理できるようにするApacheモジュールだ。専用のデータベースとユーザを作成して、SQLを実行してパスを動的に変更できる。ルートディレクトリを動的に指定したり、有効/無効の切り替えもテーブルのメンテナンスだけでできるようになる。

ピクチャ 431.png

うまく切り替わった

 

さらにPHP4/PHP5の設定をダイナミックに変更できるのも魅力だ。VirtualHost単位でphp.iniの設定を切り替えるとなると相当大変な気がする(やったことがないが)。その面倒な管理もmod-myvhostを使えば簡単だ。VirtualHostに限らず動的に設定を変更したい時に参考になりそうだ。

執筆時のバージョン

 0.15.3

 

mod-myvhost - Project Hosting on Google Code

 http://code.google.com/p/mod-myvhost/