你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

将自定义域添加到 Azure Front Door

重要

Azure Front Door(经典版)将于 2027 年 3 月 31 日停用。 为了避免任何服务中断,请务必在 2027 年 3 月之前将 Azure Front Door(经典版)配置文件迁移到 Azure Front Door 标准层或高级层。 有关详细信息,请参阅 Azure Front Door(经典版)停用

本文展示了如何将自定义域添加到 Front Door。 使用 Azure Front Door 进行应用程序分发时,如果希望自己的域名出现在最终用户请求中,则必须使用自定义域。 使用可见的域名可以方便客户,适用于推广品牌。

创建 Front Door 配置文件后,默认的前端主机将是 azurefd.net 的子域。 默认情况下,此名称包含在用于将 Front Door 内容传送到后端的 URL 中。 例如,https://contoso-frontend.azurefd.net。 为方便起见,Azure Front Door 提供了用于将自定义域与终结点相关联的选项。 凭借此功能,可以使用 URL 而不是 Front Door 默认域名(例如 https://www.contoso.com/photo.png)来传递内容。

如果没有 Azure 订阅,请在开始之前创建一个 Azure 免费帐户

注意

Front Door 不 支持包含 punycode 字符的自定义域。

先决条件

创建 CNAME DNS 记录

在可以将自定义域用于 Front Door 之前,必须先通过域提供程序创建一个规范名称 (CNAME) 记录,以指向 Front Door 的默认前端主机。 CNAME 记录是一种 DNS 记录,用于将源域名映射到目标域名。 在 Azure Front Door 中,源域名是自定义域名,目标域名则是 Front Door 默认主机名。 在 Front Door 验证所创建的 CNAME 记录后,发往源自定义域的流量将路由到指定的目标 Front Door 默认前端主机。

一个自定义域一次只能与一个 Front Door 配置文件相关联。 但是,可以在相同或不同的 Front Door 配置文件中关联一个顶点域的不同子域。

映射临时 afdverify 子域

在映射处于生产中的现有域时,需要考虑一些事项。 在 Azure 门户中注册自定义域时,该域可能会出现短暂的故障时间。 为避免 Web 流量中断,请先将自定义域映射到包含 Azure afdverify 子域的 Front Door 默认前端主机,以创建临时的 CNAME 映射。 用户可以在进行 DNS 映射时访问域,而不会出现中断。

如果你是在没有生产流量的情况下第一次使用自定义域,则可直接将自定义域映射到 Front Door。 可以直接跳到“映射永久自定义域

若要使用 afdverify 子域创建 CNAME 记录,请执行以下操作:

  1. 登录到你的自定义域的域提供商的网站。

  2. 查阅提供商的文档,或者在网站中搜索标有“域名”、“DNS”或“名称服务器管理”的区域,找到用于管理 DNS 记录的页面。

  3. 为自定义域创建一个 CNAME 记录条目并完成各个字段,如下表所示(字段名称可能有所不同):

    类型 目标
    afdverify. www.contoso.com CNAME afdverify.contoso-frontend.azurefd.net
    • 源:采用 afdverify.<自定义域名> 格式输入自定义域名,包括 afdverify 子域 。 例如 afdverify. www.contoso.com。 如果要映射通配符域(例如 *.contoso.com),则源值与不带通配符的 afdverify.contoso.com 相同。

    • 键入:输入 CNAME

    • 目标:采用 afdverify.<终结点名称>.azurefd.net 格式输入默认 Front Door 前端主机,包括 afdverify 子域 。 例如 afdverify.contoso-frontend.azurefd.net。

  4. 保存所做更改。

例如,GoDaddy 域注册机构的过程如下:

  1. 登录后选择要使用的自定义域。

  2. 在“域”部分选择“管理所有项”,然后选择 “DNS” | “管理区域”。

  3. 对于“域名”, 请输入自定义域,然后选择“搜索”。

  4. 在“DNS 管理” 页中选择“添加” ,然后在“类型”列表中选择“CNAME” 。

  5. 完成 CNAME 条目的以下字段:

    • 键入:让“CNAME” 保留选中状态。

    • 主机:输入要使用的自定义域的子域,包括 afdverify 子域名称。 例如 afdverify.www。

    • 指向:输入默认 Front Door 前端主机的主机名,包括 afdverify 子域名称。 例如 afdverify.contoso-frontend.azurefd.net。

    • TTL:保持选中“一小时” 。

  6. 选择“保存”。

    此时会将 CNAME 条目添加到 DNS 记录表。

将自定义域与 Front Door 相关联

注册自定义域以后,即可将其添加到 Front Door。

  1. 登录到 Azure 门户,浏览到 Front Door,其中包含需要映射到自定义域的前端主机。

  2. 在“Front Door 设计器”页上,选择“+”添加自定义域。

  3. 指定“自定义域” 。

  4. 对于前端主机,已预先确定要用作 CNAME 记录目标域的前端主机,并派生自 Front Door:<默认主机名>.azurefd.net。 它不能更改。

  5. 对于自定义主机名,请输入自定义域(包括子域),以用作 CNAME 记录的源域。 例如,www.contoso.com 或 cdn.contoso.com。 请勿使用 afdverify 子域名称。

  6. 选择 添加

    Azure 会验证所输入的自定义域名是否存在 CNAME 记录。 如果该 CNAME 正确,则会验证自定义域。

警告

必须确保 Front Door 中的每个前端主机(包括自定义域)都具有传递规则,且其中包含与之关联的默认路径 ('/*')。 也就是说,在所有传递规则中,默认路径 ('/*') 中定义的每个前端主机必须至少有一个路由规则。 如果不这样做,可能会导致最终用户流量无法正确路由。

验证自定义域

完成自定义域的注册后,请验证该自定义域是否引用默认 Front Door 前端主机。

在浏览器中,使用自定义域导航到文件的地址。 例如,如果自定义域为 robotics.contoso.com,则缓存的文件的 URL 应类似于:http://robotics.contoso.com/my-public-container/my-file.jpg. 验证其结果是否与直接从 <Front Door 主机>.azurefd.net 访问 Front Door 的结果相同 。

映射永久自定义域

如果确认 afdverify 子域已成功映射到 Front Door,则可将自定义域直接映射到默认 Front Door 前端主机。

若要创建自定义域的 CNAME 记录,请执行以下操作:

  1. 登录到你的自定义域的域提供商的网站。

  2. 查阅提供商的文档,或者在网站中搜索标有“域名”、“DNS”或“名称服务器管理”的区域,找到用于管理 DNS 记录的页面。

  3. 为自定义域创建一个 CNAME 记录条目并完成各个字段,如下表所示(字段名称可能有所不同):

    类型 目标
    <[www.contoso.com](www.contoso.com)> CNAME contoso-frontend.azurefd.net
    • 源:输入自定义域名(例如 www.contoso.com)。

    • 键入:输入 CNAME

    • 目标:输入默认 Front Door 前端主机。 必须采用 <主机名>.azurefd.net 格式 。 例如 contoso-frontend.azurefd.net。

  4. 保存所做更改。

  5. 如果此前已创建临时的 afdverify 子域 CNAME 记录,请将其删除。

  6. 如果是在生产环境中首次使用此自定义域,请按将自定义域与 Front Door 相关联验证自定义域中所述步骤进行操作。

例如,GoDaddy 域注册机构的过程如下:

  1. 登录后选择要使用的自定义域。

  2. 在“域”部分选择“管理所有项”,然后选择 “DNS” | “管理区域”。

  3. 对于“域名”, 请输入自定义域,然后选择“搜索”。

  4. 在“DNS 管理” 页中选择“添加” ,然后在“类型”列表中选择“CNAME” 。

  5. 完成 CNAME 条目的字段:

    • 键入:让“CNAME” 保留选中状态。

    • 主机:输入要使用的自定义域的子域, 例如 www 或配置文件。

    • 指向:输入 Front Door 的默认主机名。 例如 contoso.azurefd.net.

    • TTL:保持选中“一小时” 。

  6. 选择“保存”。

    此时会将 CNAME 条目添加到 DNS 记录表。

  7. 如果有 afdverify CNAME 记录,请选择其旁边的铅笔图标,然后选择回收站图标。

  8. 选择“删除” ,以便删除 CNAME 记录。

清理资源

在前述步骤中,已将自定义域添加到 Front Door。 如果不再需要将 Front Door 与自定义域相关联,可通过以下步骤删除自定义域:

  1. 请转到 DNS 提供程序,删除自定义域的 CNAME 记录,或将自定义域的 CNAME 记录更新为非 Front Door 终结点。

    重要

    为防止无关联的 DNS 条目及其产生的安全性风险,自 2021 年 4 月 9 日起,Azure Front Door 要求先删除 Front Door 终结点的 CNAME 记录,然后才能删除这些资源。 资源包括 Front Door 自定义域、Front Door 终结点或启用了 Front Door 自定义域的 Azure 资源组。

  2. 在 Front Door 设计器中,选择要删除的自定义域。

  3. 在自定义域的上下文菜单中选择“删除”。 自定义域将从终结点中删除。

后续步骤

在本教程中,你了解了如何执行以下操作:

  • 创建 CNAME DNS 记录。
  • 将自定义域与 Front Door 相关联。
  • 验证自定义域。

若要了解如何为自定义域启用 HTTPS,请继续学习下一教程。