diff options
Diffstat (limited to 'src/http/ngx_http_request.c')
-rw-r--r-- | src/http/ngx_http_request.c | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/src/http/ngx_http_request.c b/src/http/ngx_http_request.c index bcd5eb827..d11b13e4a 100644 --- a/src/http/ngx_http_request.c +++ b/src/http/ngx_http_request.c @@ -2142,11 +2142,13 @@ ngx_http_finalize_connection(ngx_http_request_t *r) { ngx_http_set_keepalive(r); return; + } - } else if (clcf->lingering_timeout > 0 - && (r->lingering_close - || r->header_in->pos < r->header_in->last - || r->connection->read->ready)) + if (clcf->lingering_close == NGX_HTTP_LINGERING_ALWAYS + || (clcf->lingering_close == NGX_HTTP_LINGERING_ON + && (r->lingering_close + || r->header_in->pos < r->header_in->last + || r->connection->read->ready))) { ngx_http_set_lingering_close(r); return; |