Enrute las solicitudes HTTPS de varios nombres de dominio a distintos servidores de backend mediante un único listener de ALB. Para lograrlo, utilice certificados adicionales y reglas de reenvío basadas en dominios.
Escenario de ejemplo
ALB compara el nombre de dominio de una solicitud HTTPS entrante con el certificado correspondiente y completa la autenticación HTTPS. Después, enruta la solicitud al servidor de backend correcto según las reglas de reenvío.
Este tema utiliza a continuación la siguiente configuración como ejemplo:
El certificado predeterminado del listener se llama
defaulty está asociado al nombre de dominioaliyundoc.com. El grupo de servidores predeterminado es RS1.Un certificado adicional llamado
example1está asociado al nombre de dominiowww.example.com. Las solicitudes dirigidas ahttps://www.example.comse enrutan al grupo de servidores RS1.Otro certificado adicional llamado
example2está asociado al nombre de dominiowww.example.org. Las solicitudes dirigidas ahttps://www.example.orgse enrutan al grupo de servidores RS2.
Requisitos previos
Creó una instancia de Application Load Balancer (ALB). Para obtener más información, consulte Create and manage ALB instances.
Creó dos grupos de servidores: RS1 y RS2. Para obtener más información, consulte Create and manage server groups.
Agregó servidores de backend a los grupos de servidores: una instancia ECS llamada ECS01 a RS1 y otra llamada ECS02 a RS2. También desplegó sus aplicaciones en ambas instancias ECS.
Registró sus nombres de dominio y obtuvo los registros de proveedor de contenido de Internet (ICP) correspondientes. Para obtener más información, consulte Register a domain name on Alibaba Cloud y ICP filing process.
-
Compró o cargó los certificados necesarios en Certificate Management Service y los asoció a sus respectivos nombres de dominio. Para obtener más información sobre cómo crear un certificado, consulte Enable HTTPS for a website by using a commercial certificate. Este tema requiere los siguientes certificados:
Un certificado predeterminado llamado
defaultasociado al nombre de dominioaliyundoc.com.Un certificado adicional llamado
example1asociado al nombre de dominiowww.example.com.Un certificado adicional llamado
example2asociado al nombre de dominiowww.example.org.
Paso 1: Agregar un listener HTTPS
Inicie sesión en la consola de Application Load Balancer.
En la barra de navegación superior, seleccione la región donde se desplegó la instancia de ALB.
En el panel de navegación izquierdo, seleccione Instances.
En la página Instances, busque la instancia deseada y haga clic en Create Listener dentro de la columna Actions.
-
En la página Configure Listener, configure los siguientes parámetros y conserve los valores predeterminados para el resto. Luego, haga clic en Next.
Parámetro
Descripción
Listener Protocol
Seleccione HTTPS.
Listener Port
Establezca el puerto en 443.
-
En la página Configure SSL Certificate, configure el siguiente parámetro y conserve los valores predeterminados para el resto. Luego, haga clic en Next.
Parámetro
Descripción
Server Certificate
Seleccione el certificado predeterminado que preparó, llamado
default. -
En la página Select Server Group, configure el siguiente parámetro y conserve los valores predeterminados para el resto. Luego, haga clic en Next.
Parámetro
Descripción
Server Group
Seleccione el grupo de servidores RS1 que creó.
En la página Configuration Review, revise su configuración y haga clic en Submit.
Paso 2: Agregar certificados adicionales
En la página Instances, busque la instancia deseada y haga clic en su identificador.
Haga clic en la pestaña Listener. Busque el listener HTTPS y haga clic en Manage Certificates dentro de la columna Actions.
Haga clic en la pestaña Certificates y luego en Add EV Certificate.
En el cuadro de diálogo Add Additional Certificate, seleccione el certificado
example1y haga clic en OK. Repita este paso para agregar el certificado adicionalexample2.
Paso 3: Configurar las reglas de reenvío
En la página Instances, busque la instancia deseada y haga clic en su identificador.
Haga clic en la pestaña Listener. Busque el listener HTTPS y haga clic en View/Modify Forwarding Rule dentro de la columna Actions.
En la pestaña Forwarding Rules, haga clic en Add New Rule.
-
Configure las siguientes dos reglas de reenvío y haga clic en OK.
Si Domain Name es
www.example.com, entonces Forward to RS1. Establezca Weight en 100.Si Domain Name es
www.example.org, entonces Forward to RS2. Establezca Weight en 100.
Paso 4: Configurar la resolución de nombres de dominio
Agregue registros CNAME para www.example.com y www.example.org que apunten al nombre DNS público de su instancia ALB.
Inicie sesión en la consola de Application Load Balancer.
En la barra de navegación superior, seleccione una región.
Busque la instancia ALB deseada y copie su Domain Name.
-
Siga estos pasos para agregar un registro CNAME.
NotaSi sus nombres de dominio no están registrados en Alibaba Cloud, primero debe agregarlos a la consola de Alibaba Cloud DNS antes de configurar los ajustes de DNS. Para obtener más información, consulte Domain management. Si su nombre de dominio está registrado en Alibaba Cloud, continúe con los siguientes pasos.
Inicie sesión en la consola de Alibaba Cloud DNS.
En la página Public Zone, busque el nombre de dominio deseado y haga clic en Settings dentro de la columna Actions.
En la página Settings, haga clic en Add Record.
-
En el panel Add Record, configure los siguientes parámetros para el registro CNAME y haga clic en OK.
Parámetro
Descripción
Record Type
Seleccione CNAME en la lista desplegable.
Hostname
El prefijo de su nombre de dominio, por ejemplo,
www.Query Source
Conserve el valor predeterminado.
Record Value
Introduzca la dirección CNAME del nombre de dominio. Corresponde al nombre DNS de la instancia ALB que copió.
TTL
La duración durante la cual un registro DNS permanece almacenado en la caché de un servidor DNS. Conserve el valor predeterminado.
NotaLos nuevos registros CNAME surten efecto de inmediato. El tiempo de propagación de un registro CNAME modificado depende del TTL del registro almacenado en la caché del servidor DNS local. El TTL predeterminado es de 10 minutos.
Si ocurre un conflicto al agregar el registro, utilice un nombre de host distinto. Para obtener más información, consulte DNS record conflict rules.
Paso 5: Comprobar la configuración
Una vez completada la configuración, introduzca https://www.example.com y https://www.example.org en un navegador para comprobar que las reglas de reenvío funcionan correctamente. Este ejemplo asume que usted desplegó una página web estática sencilla en cada servidor de backend.
Introduzca
https://www.example.comen su navegador. La solicitud se enruta a ECS01 en el grupo de servidores RS1. La página muestraHello World ! This is ECS01.Introduzca
https://www.example.orgen su navegador. La solicitud se enruta a ECS02 en el grupo de servidores RS2. La página muestraHello World ! This is ECS02.
Si la prueba falla, intente borrar la caché de su navegador y vuelva a probar.
Documentos relacionados
Para obtener más información sobre las reglas de reenvío, consulte Configure domain-based and path-based forwarding rules.