Will nginx route no traffic to an upstream host with weight 0?
From a (fairly cursory) reading of ngx_http_upstream_get_peer
it seems nginx will pick a weight=0 server if there is nothing else to pick at all.
Specifically see https://github.com/nginx/nginx/blob/3fae83a91c6e5cda012adf6ee2783273e747f613/src/http/ngx_http_upstream_round_robin.c#L558