2 dominios con 2 certificados, 1 IP pública, 1 servidor nginx

2 dominios con 2 certificados, 1 IP pública, 1 servidor nginx

Espero que puedan ayudarme porque no puedo entender por qué sucede esto. Tengo los siguientes 2 dominios:

  • alfa.com
  • beta.com

Ambos apuntan a la misma IP del servidor:

  • xxxx

Tengo un único nginx ejecutándose en este servidor. En mi firewall, tengo los puertos 80 y 443 reenviados a la IP interna de este servidor;

  • 192.168.1.2

Ambos dominios tienen sus propios certificados.

Aquí está la configuración del servidor para ambos dominios:

Problema: El problema aquí es que cuando voy a alpha.com, el servidor me redirige a http.s://alpha.com y carga el contenido de alpha.com, hasta ahora es genial. Cuando abro una nueva pestaña en mi navegador y escribo beta.com, la URL de mi navegador cambia a http.s://beta.com pero carga el contenido de alpha.com.

¿Cómo le diría a nginx que sirva el directorio correcto para cada dominio según la URL que se escribió en el navegador y aún así conserve el https?

Gracias.

Respuesta1

Ambos hosts virtuales apuntan al mismo puerto en su dirección de bucle invertido.

¿Qué tienes escuchando http://127.0.0.1:2368?

Debe configurar ese servicio para escuchar en dos puertos diferentes y enviar cada vhost nginx a su propio puerto único.

Respuesta2

Mira estoesteesta publicación en Digital Ocean.

Es posible a través deIdentificación del nombre del servidor(SNI). Esta es una adición relativamente reciente a SSL. Anteriormente no era posible que dos (o más) nombres de dominio diferentes usaran la misma dirección IP para el acceso https.

Respuesta3

En realidad, encontré mi propio error: tenía una plataforma de blogs fantasma ejecutándose en uno de los dominios y WordPress en el otro. Resolví el problema eliminando el siguiente código del archivo de configuración de nginx para el sitio de 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 su información, el puerto 2368 que @MyNameIsBoring mencionó es el puerto que usa el fantasma, por lo que configuré un proxy inverso para servirlo en 80 y 443. Obviamente, eso no funciona para WordPress, al eliminar esa parte del código, todo comienza a funcionar como Ellos deberían.

información relacionada