强制Apache在丢失连接后终止其子项(按下“停止button”)

在客户端(浏览器)closures连接之后,如何让Apache杀死它所产生的CGI?

我有几个执行长时间运行的CGI,每15秒发送一次输出。 只要浏览器closures连接,CGI(及其后代)应该被正确地杀死,而不是留在我的系统周围,并保持宝贵的Apache插槽占用。

最好Apache应该杀死他们。 如果没有,我想知道CGI是否有办法检测与浏览器的连接是否已经消失。

编辑:显然,CGI的将closures他们的STDOUT。 一旦写入,他们将得到一个SIGPIPE信号,并可以采取相应的行动(通常他们忽略这个信号)。 在Perl中,你可以这样做:

print "fresh output\n" or die "apparently my audience has left the building"; 

所以问题依然存在:Apache可以检测到破损的pipe道并清理垃圾吗?

运行Debian w / Apache 2.2.20,以及正常的suexec机制。

谢谢!