O erro que você está recebendo sugere que o siteB.com tem vários endereços IPv4. Em vez de especificar seus hosts de backend usando o nome DNS, basta usar localhost ou 127.0.0.1. Isso pode aplacar o verniz e elimina uma pesquisa de DNS que pode causar atrasos ou (aparentemente, como neste caso) dar errado. Eu não estou muito familiarizado com o verniz, mas eu teria adicionalmente pensado que você só precisa especificar um backend único (como é de fato a mesma caixa aqui) e apenas se certificar de que os cabeçalhos de host corretos estão fazendo isso para nginx . Falando nisso ...
Você não precisa configurar mais proxies. O Nginx permitirá que você especifique dois hosts virtuais ouvindo na mesma porta e usará a diretiva server_name para corresponder ao cabeçalho do host de solicitações recebidas. Quaisquer solicitações que não correspondam a um server_name conhecido serão capturadas pelo bloco do servidor padrão, geralmente aquele especificado primeiro, a menos que você substitua a opção default_server na diretiva listen. Veja o seguinte exemplo:
server {
listen 8080;
server_name siteA.com;
...
}
server {
listen 8080 default_server;
server_name siteB.com;
...
}
Aqui, os dois blocos do servidor estão atendendo à porta 8080 e o nginx sabe quais solicitações são para qual site, correspondendo ao cabeçalho do host. Se receber uma solicitação para a qual ela não tem uma correspondência de host, ela normalmente passaria para o bloco de siteA.com como o primeiro bloco definido, mas sobrescrevemos especificamente esse comportamento declarando que o bloqueio de siteB.com é o padrão servidor para pedidos nessa porta.
Como sua configuração de verniz é garantir que você defina os cabeçalhos de host apropriados antes que eles passem as solicitações para o back-end, isso deve ser tudo o que você precisa fazer para veicular vários sites a partir dele. Eu não deveria ter pensado que você precisaria fazer isso manualmente no verniz neste caso, já que você não está sobrescrevendo os cabeçalhos; principalmente, o que parece ser feito para normalização (ou seja, reunir tanto www.site.com quanto site.com para que você não armazene em cache duas cópias da mesma coisa). Minha leitura sugere que você não precisa especificar vários backends, pois é o mesmo servidor na mesma porta que você está olhando. O verniz deve ser inteligente o suficiente para separar os caches com base em hosts diferentes.