Tous les produits
Search
Centre de documentation

Server Load Balancer:Configure multi-domain HTTPS websites on a single CLB instance

Dernière mise à jour :Aug 18, 2026

Cette rubrique explique comment configurer une seule écoute sur une instance Classic Load Balancer (CLB) afin d'acheminer les requêtes HTTPS de différents noms de domaine vers différents serveurs principaux. Cette approche vous permet d'héberger plusieurs sites web HTTPS.

Exemple

L'instance CLB inspecte le nom de domaine présent dans la requête HTTPS, sélectionne le certificat correspondant pour finaliser l'authentification, puis transfère la requête au serveur principal approprié en fonction de vos règles de transfert.

Cette rubrique s'appuie sur la configuration suivante à titre d'exemple :

  • Le certificat par défaut de l'écouteur, nommé default, est associé au nom de domaine aliyundoc.com. Le groupe de serveurs par défaut est RS1.

  • Un certificat supplémentaire, example1, est associé au nom de domaine www.example.com. Les requêtes adressées à https://www.example.com sont acheminées vers le groupe de serveurs RS1.

  • Un autre certificat supplémentaire, example2, est associé au nom de domaine www.example.org. Les requêtes adressées à https://www.example.org sont acheminées vers le groupe de serveurs RS2.

image

Prérequis

  • Une instance CLB a été créée. Pour plus d'informations, consultez la section Créer et gérer une instance CLB.

  • Deux groupes vServer, RS1 et RS2, ont été créés. Pour plus d'informations, consultez la section Créer et gérer un groupe vServer.

  • Une instance ECS, ECS01, a été ajoutée à RS1, et une autre instance ECS, ECS02, a été ajoutée à RS2. Des services applicatifs sont déployés sur ECS01 et ECS02.

  • Vous avez enregistré des noms de domaine et effectué la procédure ICP. Pour plus d'informations, consultez les sections Enregistrer un nom de domaine sur Alibaba Cloud et Procédure d'enregistrement ICP.

  • Vous devez acheter ou importer des certificats auprès d'un tiers vers Certificate Management Service et les lier à leurs noms de domaine respectifs. Pour plus d'informations, consultez la section Activer l'accès HTTPS pour un service web à l'aide d'un certificat officiel. Les certificats suivants sont requis pour cette rubrique :

    • Un certificat par défaut nommé default lié au nom de domaine aliyundoc.com.

    • Un certificat nommé example1 lié au nom de domaine www.example.com.

    • Un certificat nommé example2 lié au nom de domaine www.example.org.

    Remarque

    Vous devez déployer les certificats sur l'instance CLB avant de pouvoir les utiliser. Pour plus d'informations, consultez la section Créer un certificat.

Étape 1 : Ajouter une écoute HTTPS

  1. Connectez-vous à la console CLB.

  2. Dans la barre de menu supérieure, sélectionnez la région où se trouve l'instance CLB.

  3. Sur la page Instances, repérez l'instance CLB cible et, dans la colonne Actions, cliquez sur Configure Listener.

  4. Sous l'onglet Protocol & Listener, configurez les paramètres suivants et cliquez sur Next.

    Cette rubrique ne décrit que les paramètres obligatoires. Vous pouvez laisser les autres paramètres avec leurs valeurs par défaut ou les configurer selon vos besoins.

    • Select Listener Protocol : sélectionnez HTTPS.

    • Listener Port : définissez le port sur 443.

  5. Sous l'onglet Certificate Management Service, sélectionnez le certificat de serveur importé et cliquez sur Next. Dans cet exemple, nous sélectionnons le certificat default.

  6. Sous l'onglet Backend Servers, sélectionnez vServer group, puis choisissez RS1 dans la liste déroulante Server Group.

  7. Conservez les valeurs par défaut pour les autres paramètres et cliquez sur Next jusqu'à atteindre l'étape de confirmation. Cliquez ensuite sur Submit.

Étape 2 : Ajouter des noms de domaine supplémentaires

  1. Sur la page Instances, repérez l'instance CLB cible, puis cliquez sur son ID.

  2. Sous l'onglet Listener, repérez l'écouteur HTTPS que vous avez créé. Dans la colonne Actions, cliquez sur l'icône More et sélectionnez Manage Additional Certificate.

  3. Dans le panneau Manage Additional Certificate, cliquez sur Add Additional Certificate.

    1. Pour le champ Additional Certificate, saisissez www.example.com. Dans la liste déroulante Server Certificate, sélectionnez le certificat associé à www.example.com, puis cliquez sur OK.

    2. Pour le champ Additional Certificate, saisissez www.example.org. Dans la liste déroulante Server Certificate, sélectionnez le certificat associé à www.example.org, puis cliquez sur OK.

    Remarque

    Assurez-vous que le nom de domaine figurant dans le certificat correspond exactement au nom de domaine supplémentaire que vous ajoutez.

    Remarque

    Tenez compte des limitations suivantes lors de l'ajout de noms de domaine supplémentaires :

    • Les noms de domaine génériques ne prennent pas en charge la correspondance SNI. Les noms de domaine supplémentaires génériques tels que *.example.com ne peuvent pas faire l'objet d'une correspondance via SNI lors de l'établissement de la liaison TLS. Lorsqu'un client spécifie un sous-domaine dans le champ SNI, le CLB ne peut pas utiliser le nom de domaine supplémentaire générique pour sélectionner le certificat correspondant. Utilisez des noms de domaine à correspondance exacte tels que www.example.com comme noms de domaine supplémentaires.

    • Des règles de transfert sont requises. Un nom de domaine supplémentaire doit être utilisé conjointement avec une règle de transfert. Si vous ajoutez un nom de domaine supplémentaire sans configurer de règle de transfert correspondante à l'étape 3, le protocole SNI n'entre pas en vigueur et le CLB traite la requête à l'aide du certificat par défaut.

    • Repli sur le certificat par défaut. Si une requête HTTPS ne correspond à aucun nom de domaine supplémentaire, le CLB utilise le certificat par défaut pour traiter la requête. Il s'agit du comportement attendu.

    • Repli en cas de certificat expiré. Lorsque le certificat de serveur associé à un nom de domaine supplémentaire expire, le CLB ignore automatiquement la logique de correspondance SNI pour ce certificat expiré. Même si le nom de domaine dans le champ SNI du client correspond exactement au domaine du certificat expiré, le CLB n'utilise pas ce dernier et revient au certificat par défaut configuré sur l'écouteur HTTPS. Cela peut amener les clients à recevoir le certificat par défaut au lieu du certificat spécifique au domaine attendu, entraînant des avertissements d'inadéquation de certificat SSL/TLS. Pour éviter toute interruption de service, renouvelez les certificats des noms de domaine supplémentaires avant leur expiration.

Étape 3 : Configurer les règles de transfert

  1. Sur la page Instances, cliquez sur l'ID de l'instance CLB cible.

  2. Sous l'onglet Listener, repérez l'écouteur et cliquez sur Set Forwarding Rule dans la colonne Actions.

  3. Dans le panneau Add Forwarding Rules, ajoutez des règles de transfert.

    Dans cet exemple, seules des règles de transfert basées sur le nom de domaine sont configurées. Les paramètres URL ne sont pas configurés.

    1. Dans la colonne Domain Name, saisissez www.example.com, sélectionnez le groupe vServer RS1, puis cliquez sur Add Forwarding Policy.

    2. Dans la colonne Domain Name, saisissez www.example.org, sélectionnez le groupe vServer RS2, puis cliquez sur Add Forwarding Policy.

  4. Une fois les règles de transfert configurées, fermez le panneau Add Forwarding Rules.

Étape 4 : Configurer la résolution des noms de domaine

Ajoutez des enregistrements A pour www.example.com et www.example.org afin qu'ils pointent vers l'adresse IP publique de l'instance CLB.

  1. Connectez-vous à la console CLB.

  2. Dans la barre de navigation supérieure, sélectionnez une région.

  3. Sélectionnez l'instance CLB pour la résolution de nom de domaine et copiez son adresse IP publique correspondante.

  4. Pour ajouter un enregistrement A :

    1. Connectez-vous à la console Alibaba Cloud DNS.

    2. Sur la page Public Zone, cliquez sur Add Zone.

    3. Dans la boîte de dialogue Add Zone, saisissez votre nom de domaine et cliquez sur OK.

      Important

      Vérifiez la propriété de votre domaine à l'aide d'un enregistrement TXT.

    4. Repérez le nom de domaine que vous souhaitez gérer et cliquez sur Settings dans la colonne Actions.

    5. Sur la page Settings, cliquez sur Add Record.

    6. Dans le panneau Add Record, configurez les paramètres suivants pour ajouter un enregistrement A, puis cliquez sur OK.

      Parameter

      Description

      Record Type

      Sélectionnez A dans la liste déroulante.

      Hostname

      Le préfixe de votre nom de domaine.

      Query Source

      Sélectionnez Default.

      Record Value

      La valeur d'enregistrement correspond à l'adresse IP publique de l'instance CLB que vous avez copiée.

      TTL

      Durée de vie (TTL). Ce paramètre définit la durée pendant laquelle l'enregistrement DNS est mis en cache sur un serveur DNS. Cet exemple utilise la valeur par défaut.

Étape 5 : Vérifier les résultats

Une fois la configuration terminée, saisissez https://www.example.com et https://www.example.org dans un navigateur pour vérifier que les règles de transfert fonctionnent correctement. Cet exemple suppose que vous avez déployé une page web statique simple sur chaque serveur principal.

  • Saisissez https://www.example.com dans votre navigateur. La requête est acheminée vers ECS01 dans le groupe de serveurs RS1. La page affiche Hello World ! This is ECS01.

  • Saisissez https://www.example.org dans votre navigateur. La requête est acheminée vers ECS02 dans le groupe de serveurs RS2. La page affiche Hello World ! This is ECS02.

Remarque

Si le test échoue, essayez de vider le cache de votre navigateur et recommencez le test.

FAQ

Q : Après avoir configuré des noms de domaine supplémentaires, les requêtes HTTPS renvoient toujours le certificat par défaut. Comment résoudre ce problème ?

  1. Vérifiez si vous utilisez des noms de domaine à correspondance exacte. Les noms de domaine génériques tels que *.example.com ne prennent pas en charge la correspondance SNI automatique sur le CLB. Utilisez des noms de domaine à correspondance exacte tels que www.example.com comme noms de domaine supplémentaires.

  2. Vérifiez si des règles de transfert sont configurées. Un nom de domaine supplémentaire seul ne suffit pas pour que le protocole SNI entre en vigueur. Vous devez également configurer une règle de transfert pour chaque nom de domaine supplémentaire. Consultez l'étape 3 : Configurer les règles de transfert pour vérifier qu'une règle de transfert existe pour votre nom de domaine supplémentaire.

  3. Vérifiez si le nom de domaine du certificat correspond au nom de domaine supplémentaire. Le nom de domaine figurant dans le certificat doit correspondre exactement au nom de domaine supplémentaire que vous avez configuré. Toute inadéquation entraîne le repli du CLB sur le certificat par défaut.

  4. Vérifiez le comportement SNI à l'aide d'openssl. Exécutez la commande suivante pour vérifier quel certificat le CLB renvoie pour un nom de domaine spécifique :

    openssl s_client -connect <CLB_VIP>:443 -servername <domain_name>

    Dans la sortie, vérifiez le champ subject du certificat renvoyé. Si le sujet affiche le nom de domaine par défaut au lieu de votre nom de domaine prévu, vérifiez que le nom de domaine supplémentaire et la règle de transfert sont correctement configurés.

  5. Vérifiez la configuration des domaines d'extension dans la console. Sur la page Instances, cliquez sur l'ID de l'instance CLB cible, accédez à l'onglet Listeners, repérez l'écouteur HTTPS et, dans la colonne Actions, choisissez More > Manage Certificates pour vérifier le certificat par défaut et les domaines d'extension configurés. Si la liste Manage Additional Certificate est vide, aucun domaine d'extension n'est configuré et toutes les requêtes HTTPS utilisent le certificat par défaut de l'écouteur. Suivez l'étape 2 pour ajouter des domaines d'extension pour chaque domaine et lier les certificats de serveur correspondants.

  6. Vérifiez la configuration des domaines d'extension à l'aide de l'API. Appelez l'API DescribeLoadBalancerHTTPSListenerAttribute pour interroger le champ DomainExtensions et vérifier l'état de la configuration des domaines d'extension. Si la réponse contient "DomainExtension": [] (tableau vide), aucun domaine d'extension n'est configuré et toutes les requêtes de domaine utilisent le certificat par défaut. Lorsque des domaines d'extension sont configurés, vérifiez que les champs Domain et ServerCertificateId de chaque entrée correspondent au domaine et au certificat attendus.

  7. Comprenez la limitation de la correspondance des certificats génériques. Si le certificat de serveur lié à un domaine d'extension est un certificat générique (le domaine de liaison est au format *.example.com), notez ce qui suit : lorsque plusieurs domaines d'extension sous le même écouteur HTTPS utilisent des certificats génériques, seul le premier certificat générique est automatiquement utilisé pour la correspondance SNI. Les domaines d'extension restants doivent être liés à des certificats de domaine à correspondance exacte individuels ; sinon, le certificat par défaut de l'écouteur est renvoyé.

Documents connexes