[nginx] Upstream: fixed $upstream_status when upstream returns 503/504.

Ruslan Ermilov ru at nginx.com
Wed Oct 11 19:18:32 UTC 2017


details:   http://hg.nginx.org/nginx/rev/882ad033d43c
branches:  
changeset: 7130:882ad033d43c
user:      Ruslan Ermilov <ru at nginx.com>
date:      Wed Oct 11 22:04:28 2017 +0300
description:
Upstream: fixed $upstream_status when upstream returns 503/504.

If proxy_next_upstream includes http_503/http_504, and upstream
returns 503/504, $upstream_status converted this to 502 for any
values except the last one.

diffstat:

 src/http/ngx_http_upstream.c |  5 +++++
 1 files changed, 5 insertions(+), 0 deletions(-)

diffs (22 lines):

diff -r f4cf4f970e6e -r 882ad033d43c src/http/ngx_http_upstream.c
--- a/src/http/ngx_http_upstream.c	Wed Oct 11 22:04:11 2017 +0300
+++ b/src/http/ngx_http_upstream.c	Wed Oct 11 22:04:28 2017 +0300
@@ -4111,6 +4111,7 @@ ngx_http_upstream_next(ngx_http_request_
     switch (ft_type) {
 
     case NGX_HTTP_UPSTREAM_FT_TIMEOUT:
+    case NGX_HTTP_UPSTREAM_FT_HTTP_504:
         status = NGX_HTTP_GATEWAY_TIME_OUT;
         break;
 
@@ -4118,6 +4119,10 @@ ngx_http_upstream_next(ngx_http_request_
         status = NGX_HTTP_INTERNAL_SERVER_ERROR;
         break;
 
+    case NGX_HTTP_UPSTREAM_FT_HTTP_503:
+        status = NGX_HTTP_SERVICE_UNAVAILABLE;
+        break;
+
     case NGX_HTTP_UPSTREAM_FT_HTTP_403:
         status = NGX_HTTP_FORBIDDEN;
         break;


More information about the nginx-devel mailing list