Minha sugestão seria não usar daemontools para executar o Apache , mas em vez disso você deve simplificar seu script de execução.
Comece com os mínimos mínimos:
#!/bin/bash
exec apache2 -f /path/to/httpd.conf -D NO_DAEMONIZE
Se você precisar / quiser usar envdir
, poderá iniciar o apache com isso em vez de exec
.
A chamada ulimit
provavelmente não é necessária, mas pode ser adicionada em qualquer lugar no script de execução antes de você iniciar o Apache.
Re: o comportamento estranho que você está vendo, são algumas diferenças funcionais entre -DFOREGROUND
e -DNO_DAEMONIZE
- o último é o que sempre vi recomendado para executar o Apache em daemontools (precedido pelo obrigatório "Don't Do That") - Eu não sei porque qualquer uma dessas diferenças causaria o comportamento que você descreveu.