lighttpd receives SIGPIPE if it tries to output warning about invalid config directive. if lighttpd is started from output capturing program like initlog, then lighttpd receives SIGPIPE, because lighttpd has daemonized() and after that initlog closes connected STDERR and exits itself.
i believe moving daemonize afterwards the log_error_open() could prevent this problem.
stat64("/etc/localtime", {st_mode=S_IFREG|0644, st_size=814, ...}) = 0
write(2, "2005-06-29 15:54:19: (server.c.633) WARNING: unknown config-key: index-file.extensions (ignored) \n", 98) = -1 EPIPE (Broken pipe)
--- SIGPIPE (Broken pipe) @ 0 (0) ---
Process 26854 detached
to reproduce put this into lighttpd/1.3.14 config:
index-file.extensions = (
"index.html",
)
and start lighttpd from initlog:
strace -s5000 -ff nice -n 0 initlog -c "lighttpd -f /etc/lighttpd/lighttpd.conf"