Nginx patch for unexpected FASTCGI_END_REQUEST on php keep_conn + fastcgi_finish_request
mdounin at mdounin.ru
Fri Jul 4 13:23:31 UTC 2014
On Fri, Jul 04, 2014 at 05:18:52PM +0400, Dmitry Saprykin wrote:
> This changeset adds support for FastCGI FCGI_END_REQUEST record type.
> Now nginx does not process this type of FastCGI record.
> In case of usage php fastcgi upstream which finishes FastCGI
> requests before end of script using fastcgi_finish_request() call
> it leads to "upstream sent unexpected FastCGI record: 3 while reading
> response header from upstream" error messages and 502 for clients.
> Changeset parses FCGI_END_REQUEST FastCGI records and ignores it
> if keep_conn is enabled and record has type FCGI_REQUEST_COMPLETE.
What makes you think that this is something to be fixed in nginx?
The FCGI_END_REQUEST record is clearly unexpected if there are no
requests in flight. You may want to focus on fixing the problem
in php instead.
More information about the nginx-devel