
Espero que você possa me ajudar aqui porque não consigo entender por que isso está acontecendo. Eu tenho os seguintes 2 domínios:
- alfa.com
- beta.com
ambos apontando para o mesmo IP do servidor:
- xxxx
Eu tenho um único nginx em execução neste servidor. No meu firewall, tenho as portas 80 e 443 encaminhadas para o IP interno deste servidor;
- 192.168.1.2
ambos os domínios possuem seus próprios certificados.
Aqui está a configuração do servidor para ambos os domínios:
- alfa. com:http://pastebin.com/u9absNMe
- beta. com:http://pastebin.com/m7dV2cqk
Problema: O problema aqui é que quando vou para alpha.com, o servidor me redireciona para http.s://alpha.com e carrega o conteúdo de alpha.com, até agora está ótimo. Quando abro uma nova guia no meu navegador e digito beta.com, o URL do meu navegador muda para http.s://beta.com, mas carrega o conteúdo de alpha.com.
Como eu diria ao nginx para servidorar o diretório correto para cada domínio com base em qual URL foi digitado no navegador e ainda manter o https?
Obrigado.
Responder1
Ambos os seus hosts virtuais estão apontando para a mesma porta no seu endereço de loopback.
O que você está ouvindo http://127.0.0.1:2368
?
Você precisa configurar esse serviço para escutar em duas portas diferentes e fazer proxy de cada vhost nginx para sua própria porta exclusiva.
Responder2
Dê uma olhada emesseesta postagem no Digital Ocean.
É possível atravésIdentificação do nome do servidor(SNI). Esta é uma adição relativamente recente ao SSL. Anteriormente não era possível que dois (ou mais) nomes de domínio diferentes usassem o mesmo endereço IP para acesso https.
Responder3
Na verdade, descobri meu próprio erro: tinha uma plataforma de blog fantasma rodando em um dos domínios e wordpress no outro. Resolvi o problema removendo o seguinte código do arquivo de configuração nginx do site wordpress.
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header HOST $http_host; proxy_set_header X-Forwarded-Proto $scheme; proxy_pass http://127.0.0.1:2368;
Para sua informação, a porta 2368 que @MyNameIsBoring mencionou é a porta que o fantasma usa, então eu configurei o proxy reverso para servi-lo em 80 e 443. Obviamente, isso não funciona para wordpress, ao remover essa parte do código, todos começam a funcionar como eles deviam.