diff --git a/src/http/ngx_http_upstream.c b/src/http/ngx_http_upstream.c index a358ce248..a917dcf49 100644 --- a/src/http/ngx_http_upstream.c +++ b/src/http/ngx_http_upstream.c @@ -2843,7 +2843,7 @@ ngx_http_upstream_add(ngx_conf_t *cf, ngx_url_t *u, ngx_uint_t flags) uscfp = umcf->upstreams.elts; for (i = 0; i < umcf->upstreams.nelts; i++) { - if (uscfp[i]->port != u->portn + if ((uscfp[i]->port && uscfp[i]->port != u->portn) || uscfp[i]->host.len != u->host.len || ngx_strncasecmp(uscfp[i]->host.data, u->host.data, u->host.len) != 0)