Tips記事
» 2001年08月22日 00時00分 UPDATE

バーチャルホストのアクセスログがローテートしない

[木田佳克,ITmedia]

 Apacheのバーチャルホスト設定を行えば,「1つのIPアドレスで複数のドメインを稼動させたい」Tipsで紹介したように,1つのIPアドレスでも複数のドメインを持つことが可能だ。

 この設定を行った際,意外と忘れがちなのがアクセスログファイルのローテート(ログファイルの分割バックアップ)設定である。バーチャルドメイン設定を行ったら,組で設定しておくことを忘れずに。

 メインドメインのローテート設定は,「ソースコンパイルのApacheでアクセスログをローテートさせたい」Tipsで紹介したように,「/etc/logrotate.d/apache」ファイル内で設定されている。このファイルに次のような記述を加えればよい。ただしこの設定は,httpd.conf内でバーチャルホストのアクセスログが,適所に保存されるよう設定されていることが前提だ。

/usr/local/apache/logs/andromeda-access_log {
rotate 50
monthly
postrotate
/usr/bin/kill -HUP `/bin/cat /usr/local/apache/logs/httpd.pid`
endscript
}

/usr/local/apache/logs/andromeda-error_log {
rotate 50
monthly
postrotate
/usr/bin/kill -HUP `/bin/cat /usr/local/apache/logs/httpd.pid`
endscript
}

 ここでの例は,httpd.conf内で次のようにログ記録が定義されていることが前提である。パス指定についても,上記設定と同じになるように確認しておこう。

NameVirtualHost 192.168.0.200

<VirtualHost 192.168.0.200>

〜中略〜

ErrorLog /usr/local/apache/logs/ \
andromeda-error_log

CustomLog /usr/local/apache/logs/ \
andromeda-access_log combined

</VirtualHost>

Copyright © ITmedia, Inc. All Rights Reserved.

注目のテーマ