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

将自定义域添加到 Azure Front Door

适用于: ✔️ Front Door (经典)

Important

本文展示了如何将自定义域添加到 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 帐户,请在开始前创建一个免费帐户

Note

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

Prerequisites

创建 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 记录条目并完成各个字段,如下表所示(字段名称可能有所不同):

    Source 类型 Destination
    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 正确,则会验证自定义域。

Warning

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

验证自定义域

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

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

映射永久自定义域

若要继续将自定义域直接映射到默认 Front Door 前端主机,你需要确保 afdverify 子域已成功映射到 Front Door。 验证后,可以继续映射自定义域。

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

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

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

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

    Source 类型 Destination
    <[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 终结点。

    Important

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

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

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

后续步骤