fix case when two directives
proxy_pass http://backend;
proxy_pass https://backend;
both use one port - 80 or 443, that was defined first.
diff --git a/src/http/ngx_http_upstream.c b/src/http/ngx_http_upstream.c index 376b85f..bc45674 100644 --- a/src/http/ngx_http_upstream.c +++ b/src/http/ngx_http_upstream.c
@@ -3209,6 +3209,12 @@ continue; } + if (uscfp[i]->default_port && u->default_port + && uscfp[i]->default_port != u->default_port) + { + continue; + } + return uscfp[i]; }