如何正确配置 Azure DNS 以将所有流量路由到 CDN 配置文件

问题描述

我昨天通过 Azure 购买了一个域,发现有两个地方可以修改 DNS 记录条目,但它们似乎彼此不同步。

在应用服务域中有一个“管理 DNS 记录”选项,我可以在其中添加各种记录类型。但是,还有“高级管理门户”,我可以在其中进入 DNS 区域并添加记录。当我在一个区域添加一条记录时,它不会反映在另一个区域中。

当我尝试将 www 和别名的 CNAME 记录添加到“mycdn.azureedge.net”时,CDN 配置文件无法找到此记录,无论它是在管理 DNS 区域、高级管理还是两者中。

我不确定应该在哪里创建此记录,因为我似乎可以在两个地方进行。

解决方法

我自己解决了问题。当您将域转移到 azure 时,Azure 高级 DNS 管理似乎优先于 DNS 区域管理。

我从来没有让 CDN 配置文件真正识别我创建的任何 CNAME 记录,但我使用 CDN 为静态 Web 应用程序设置别名,并且一旦我使用 www 根在静态 Web 应用程序中配置了自定义域那行得通。此外,我需要将域转发添加到高级 DNS 区域管理以将顶点域转发到 www 域。

因为这是一个使用 React Router 的 React SPA,我还需要创建一个 Routes.json 文件以将所有流量发送到 index.html 文件。