質問: CGI実行時に Apacheのログに、下記のように表示され、CGIを使うことができません。 「Too many open files: couldn't set child process attributes」 このサーバーではVirtualHostを数100定義しているのですが、VirtualHostの定義を一つへらすと、上記エラーは起きなくなり、CGIも実行できるようになります。原因と対処方法を教えてください。 VirtualHostは今後も増える予定なので、VirtualHostを減らすという回答はなしでお願いします。
回答: エラーメッセージの通り、開いているファイルの数が上限を越えたということだと思うのですが、 Virtual Host のそれぞれで出力するログファイルを変えているのなら、 同じログファイルに出すようにするというのはどうでしょうか。 また、 http://www.atmarkit.co.jp/flinux/rensai/apache2_03/apache03b.htm... や にあるように ulimitで設定を変えてみるのはどうでしょうか。