ぐらめぬ・ぜぷつぇんのはてダ(2007 to 2011)

2007年~2011年ごろまで はてなダイアリー に書いてた記事を引っ越してきました。

VirtualHostの設定をもうちょい簡単に

少しメモ書き。Apache2以降。
ApacheのVirtualHost設定は

NameVirtualHost *:80
<VirtualHost *:80>
    ServerAdmin info@your.virtualhost.com
    DocumentRoot /your/document/root/to/virtualhost/contents
    ServerName your.virtualhost.com
    <Directory "/your/document/root/to/virtualhost/contents">
        AllowOverride XXX
        Options XXXXXX
        ...
    </Directory>
    ErrorLog ...
    CustomLog ...

    ErrorDocument 404 /index.php
    ErrorDocument 403 /index.php
</VirtualHost>

こんな感じで、あとはVirtualHost設定を追記していくことでぽこぽこできます。
が、いちいちApachehttpd.confを弄るのも面倒ですね。

というわけで、某サーバーではInclude指示子を使って、各VirtualHost毎にconfファイルに切り出して分離しています。

httpd.conf:
...
...
NameVirtualHost *:80
Include /etc/httpd/conf/vhosts/*.conf

で、/etc/httpd/conf/vhosts ディレクトリは自分で mkdir -p しておきます。で、中には

virtualhost_1.conf
virtualhost_2.conf
virtualhost_3.conf
...

こんな感じのファイルを放り込むわけです。で、各ファイルには上記のVirtualHost設定がそれぞれ書かれている・・・と、そういう案配にしてます。
こうしておけば、・・・まぁ結局ファイルの編集は発生するわけですが、精神衛生上宜しい。というだけの話ではありますが。

当然ファイルを加えたり編集したら、

# apachectl configtest
or
> apache -t

とかして設定ファイルのSyntaxをチェックしてから、サーバーを再起動しましょう。

というわけで、YakiBikiと何の関係もないけどとりあえずメモ。