Nginx - redireciona o tráfego de forma transparente para outro bloco de servidor

Nginx - redireciona o tráfego de forma transparente para outro bloco de servidor

Eu tenho uma configuração NGINX com dois hosts virtuais ( server {}blocos): um servindo um site legível por humanos no domínio primário e outro atuando como proxy reverso para um serviço especializado em um subdomínio.

http {
    <...>

    server {
        listen 443 ssl http2;
        server my.tld;
        <...>

        location / {
            root /srv/http;
            <...>
        }
    }

    server {
        listen 443 ssl http2;
        server svc.my.tld;

        <complex reverse-proxy setup with many location blocks>
    }
}

Por algum motivo, alguns clientes do serviço especializado enviam suas solicitações para o domínio primário (ou seja, vejo my.tld/api/endpointem vez de svc.my.tld/api/endpointnos logs).Não consigo consertar esses clientes. Eles também não seguem redirecionamentos.

Existe alguma maneira de redirecionar de forma transparente essas solicitações para o server {}bloco correto, sem duplicar toda a configuração do proxy reverso no bloco do servidor principal?

informação relacionada