Bug #2566
closedmod_fastcgi should handle "quick" responses
Description
mod_fastcgi fails if the fastcgi application closes the connection after sending a response without waiting for the request body.
For example libfcgi closes the connection after a 2 second timeout while reading after the response is sent:
select(5, [4], NULL, NULL, {2, 0}) = 0 (Timeout) close(4) = 0
Such timeout can especially occur on slow (embedded) systems when lighttpd isn't able to read the POST data fast enough from the tmpfiles, or the system is generally busy otherwise.
For unix sockets we could handle EPIPE as indication for this; we should still be able to read the response after that. On TCP sockets we probably would get ECONNRESET, and reading might not work after that.
This means that mod_fastcgi should also select for read events on the socket while it is writing the request data (and therefore waiting for write events), which the current fdevent API cannot handle.
Updated by gstrauss over 8 years ago
- Related to Bug #131: FastCGI FCGI_STDOUT before FCGI_STDIN bug added
Updated by gstrauss over 8 years ago
- Status changed from New to Patch Pending
- Target version changed from 1.4.x to 1.4.40
fixed submitted as part of https://github.com/lighttpd/lighttpd1.4/pull/53
Updated by gstrauss over 8 years ago
- Status changed from Patch Pending to Fixed
- % Done changed from 0 to 100
Applied in changeset 2f21aaa973a902ee237a9894bdedd6c82c8edfe2.
Also available in: Atom