单ALB实例配置多域名HTTPS网站

当您需要在同一个监听中将不同域名的HTTPS访问请求转发至不同的后端服务器,您可参考本文进行配置实现多域名HTTPS网站。

场景示例

ALB会根据客户端请求的HTTPS域名去查找对应证书并完成HTTPS认证,然后根据转发规则转发到对应的后端服务器。

本文配置示例如下:

  • 监听默认证书default绑定域名aliyundoc.com,默认后端服务器组选择RS1。

  • 监听扩展证书example1绑定域名www.example.comhttps://www.example.com的客户端请求转发至后端服务器组RS1。

  • 监听扩展证书example2绑定域名www.example.orghttps://www.example.org的客户端请求转发至后端服务器组RS2。

image

前提条件

  • 已创建ALB实例。具体操作,请参见创建应用型负载均衡

  • 已创建服务器组RS1和RS2。具体操作,请参见创建和管理服务器组

  • 已在服务器组RS1和RS2中分别添加ECS01和ECS02实例,并在ECS01和ECS02中部署了应用服务。

  • 已经注册域名并完成备案。具体操作,请参见注册阿里云域名ICP备案流程概述

  • 已购买证书或者上传第三方证书到SSL证书服务并绑定域名。关于创建证书,请参见SSL证书快速上手。本文需要以下证书:

    • 已绑定域名aliyundoc.com的默认证书default。

    • 已绑定域名www.example.com的证书example1。

    • 已绑定域名www.example.org的证书example2。

步骤一:添加HTTPS监听

  1. 登录应用型负载均衡ALB控制台

  2. 在顶部菜单栏,选择实例所属的地域。

  3. 在左侧导航栏,选择实例

  4. 实例页面,找到目标实例,然后在操作列单击创建监听

  5. 配置监听页面配置以下信息,其他参数可保持默认值或根据实际情况修改。完成后单击下一步

    配置

    说明

    选择监听协议

    选择HTTPS

    监听端口

    本文配置端口443。

  6. 配置SSL证书页面配置以下信息,其他参数可保持默认值或根据实际情况修改。完成后单击下一步

    配置

    说明

    选择服务器证书

    选择准备的默认证书default。

  7. 选择服务器组页面配置以下信息,其他参数可保持默认值或根据实际情况修改。完成后单击下一步

    配置

    说明

    选择服务器组

    选择此前已创建好的服务器组RS1。

  8. 配置审核页面,检查配置参数是否有误,无误的话单击提交,等待监听创建完成。

步骤二:添加扩展证书

  1. 实例页面,找到目标实例,单击实例ID。

  2. 监听页签,找到已创建的HTTPS监听,然后在操作列单击管理证书

  3. 监听证书 > 服务器证书页签,单击添加扩展证书

  4. 添加扩展证书对话框,选择证书example1,然后单击确定。继续重复此步骤添加扩展证书example2。

步骤三:配置转发规则

  1. 实例页面,找到目标实例,单击实例ID。

  2. 监听页签,找到已创建的HTTPS监听,然后在操作列单击查看/编辑转发规则

  3. 转发规则页签,针对请求方向转发规则,单击插入新规则

  4. 配置2条转发规则,完成后单击确定

    • 如果域名www.example.com,那么转发至RS1,权重:100。

    • 如果域名www.example.org,那么转发至RS2,权重:100。

    说明
    • 权重越大ECS实例将被分配到更多的访问请求,本文配置示例为100。

    • 权重取值范围为:1~100。

步骤四:配置域名解析

分别为www.example.comwww.example.org添加CNAME记录解析到ALB实例的公网服务域名上。

  1. 登录应用型负载均衡ALB控制台

  2. 在顶部菜单栏选择地域。

  3. 选择要进行域名解析的ALB实例,复制其对应的DNS名称。

  4. 完成以下步骤来添加CNAME解析记录。

    1. 登录域名解析控制台

    2. 域名解析页面单击添加域名

    3. 添加域名对话框中输入您的主机域名,然后单击确认

      重要

      您的主机域名需已完成TXT记录验证。

    4. 在目标域名的操作列单击解析设置

    5. 解析设置页面单击添加记录

    6. 添加记录面板配置以下信息完成CNAME解析配置,然后单击确认

      配置

      说明

      记录类型

      在下拉列表中选择CNAME

      主机记录

      您的域名的前缀。

      解析请求来源

      选择默认。

      记录值

      输入域名对应的CNAME地址,即您复制的ALB实例的DNS名称。

      TTL

      全称Time To Live,表示DNS记录在DNS服务器上的缓存时间,本文使用默认值。

      说明
      • 新增CNAME记录实时生效,修改CNAME记录取决于本地DNS缓存的解析记录的TTL到期时间,默认为10分钟。

      • 添加时如遇添加冲突,请换一个解析域名。更多信息请参见解析记录冲突规则

步骤五:结果验证

在浏览器中分别输入www.example.comwww.example.org均可访问服务,本文在服务器组RS1和RS2对应的后端服务器两个实例上搭建了两个静态网页。

  • 在浏览器中输入扩展证书example1绑定域名www.example.com,将根据已配置的转发规则,转发至服务器组RS1对应的后端服务器ECS01。如下图所示:ECS01验证结果

  • 在浏览器中输入扩展证书example2绑定域名www.example.org,将根据已配置的转发规则,转发至服务器组RS2对应的后端服务器ECS02。如下图所示:ECS02验证结果

说明

配置完成后测试如果出现问题,请尝试重启浏览器后再测试,避免缓存对结果的影响。

相关文档

转发规则可参考配置域名和路径的转发规则