Summary: | SIGWINCH kills Apache | ||
---|---|---|---|
Product: | Apache httpd-2 | Reporter: | Chris Wilson (Aptivate) <chris+apache> |
Component: | Core | Assignee: | Apache HTTPD Bugs Mailing List <bugs> |
Status: | RESOLVED WONTFIX | ||
Severity: | normal | ||
Priority: | P2 | ||
Version: | 2.2.14 | ||
Target Milestone: | --- | ||
Hardware: | PC | ||
OS: | Linux |
Description
Chris Wilson (Aptivate)
2011-01-27 07:02:20 UTC
You are correct that SIGWINCH is used to signal a windows size change to the applications running on a terminal. Due to the lack of other signal numbers and given the fact that httpd normally runs detached from a terminal the SIGWINCH signal was chosen to instruct httpd to do a graceful shutdown. So this works as designed. Is there any workaround for this? It also affects downstream services, e.g. mod_wsgi which *are* run in the foreground. See f.ex. https://bz.apache.org/bugzilla/show_bug.cgi?id=50669. (In reply to user from comment #2) > Is there any workaround for this? > > It also affects downstream services, e.g. mod_wsgi which *are* run in the > foreground. See f.ex. https://bz.apache.org/bugzilla/show_bug.cgi?id=50669. That URL was supposed to be https://github.com/GrahamDumpleton/mod_wsgi/issues/105 :-( @rpluem is this still true 12 years later? Are there no other ways to signal apache without abusing SIGWINCH? Having apache exit after a window change is a bit odd. One work-around could be, to actually determine the terminal window size, and if it has actually changed, not exit the daemon? That way, you could have both ways. If SIGWINCH is received without any window changes, do what you do now, but if there where window changes, ignore the signal? |