エラーばかり出るapache・・・orz。
例のお亡くなりになってしまい、なんとか復旧が完了したクライアントのサーバ。
2週間ほど前、一度変なエラーが出て、apacheだけが落ち、昨日もapacheだけが落ちていた。
で、原因を探ると、下記のようなエラーが。
httpd: module "mod_alias.c" could not be loaded, because the dynamic module limit was reached.
Please increase DYNAMIC_MODULE_LIMIT and recompile.
っていうのと
[Mon Nov 28 09:32:34 2005] [warn] pid file /usr/local/apache/logs/httpd.pid overwritten -- Unclean shutdown of previous Apache run?
で、下のエラーは何度か見かけたことがあるので、知っているんだけど、じゃあ、どうしてこうなったのか、ということ。
それがどうやら上のエラーが原因っぽい。
調べていくうちに(というか、そのまんまググっただけだけど)、下記のサイトを発見。
- Bad Tune Award (FreeBSD 作業備忘録より)
http://bad.tune.jp/archives/2005/04/freebsd.html
OSのディストリビューションは違えど、同じ現象。
apacheをソースからインストールしたところまで同じだったので、参考になりました。
やはり、復旧時にインストールしたときのconfigureオプションによるものっぽい、と判断。
cronが1週間ごとにlogrotateするのだが、その際のHUPを受け付けていないらしい。
それで、mod_alias.cが原因で落っこちていることがある。だけど、落ちていない週もあるから不思議。
logrotateは生かしておきたいので、HUPを投げるのではなく、いちいちstopしてからstartsslすることにした。*1
毎週、cronで再起動かけるのもなんかイヤだけど、仕方がない。
とりあえず、なんとかなったが、根本的な解決ではないのは確か。
ん?
> /dev/null とかして、エラーを出力しないようにすればいいのか?
それもなんか気持ち悪いよな〜。
結局、httpd.confを見直すか、apacheを再コンパイルするかしないと解決はしないっぽい。
あぅ( ̄ロ ̄)。
*1:このサーバ、restartはダメなのだ。つっても検証してないだけかもしれないけど