Upstream: handling of upstream SSL handshake timeouts.
Previously SSL handshake timeouts were not properly logged, and resulted
in 502 errors instead of 504 (ticket #1126).
diff --git a/src/http/ngx_http_upstream.c b/src/http/ngx_http_upstream.c
index a6dd55e..ed25f43 100644
--- a/src/http/ngx_http_upstream.c
+++ b/src/http/ngx_http_upstream.c
@@ -1666,6 +1666,13 @@
return;
}
+ if (c->write->timedout) {
+ c = r->connection;
+ ngx_http_upstream_next(r, u, NGX_HTTP_UPSTREAM_FT_TIMEOUT);
+ ngx_http_run_posted_requests(c);
+ return;
+ }
+
failed:
c = r->connection;