Azure Traffic Manager搭配Azure Functions配置CNAME时遇自定义域未配置错误
解决Azure Traffic Manager+Functions自定义域名绑定错误(免费方案)
错误
Custom domain has not been configured inside Azure的核心原因是仅在CloudFlare配置了CNAME解析,但未在Azure侧完成自定义域名的绑定与所有权验证——Azure完全兼容CloudFlare等第三方DNS服务,不存在兼容性问题。
免费解决步骤
1. 绑定并验证自定义域名到Azure Traffic Manager
- 登录Azure门户,打开你的Traffic Manager配置文件
- 左侧导航选「自定义域名」,点击「添加」
- 输入自定义域名(如
api.mydomain.com)并保存 - 按Azure提示,在CloudFlare DNS中添加TXT记录:
- 主机记录:
api.mydomain.com - 记录值:Azure提供的验证字符串(格式:
azure-traffic-manager-verification=xxxxxx)
- 主机记录:
- 等待DNS生效(10-30分钟),返回Azure完成验证。
2. 为所有后端Azure Functions绑定同一域名
Traffic Manager会转发请求到各区域的Functions实例,每个实例都需接受该域名请求:
- 逐个打开各区域的Functions应用门户
- 左侧导航选「自定义域名」,点击「添加自定义域名」
- 输入
api.mydomain.com,选择「CNAME记录」类型 - 按提示在CloudFlare添加对应TXT验证记录(每个Functions的验证串可能不同,按要求添加)
- 完成验证后,Functions即可接收该域名的请求。
3. 调整CloudFlare DNS设置
- 确认CNAME记录
api.mydomain.com指向你的Traffic Manager域名(如xxx.trafficmanager.net) - 暂时关闭CloudFlare代理模式(橙色云改灰色云):避免干扰Azure的域名验证,绑定完成后可重新开启。
4. 免费HTTPS配置(可选)
方案一:Azure免费SSL证书
- 在每个Functions应用的「自定义域名」页面,点击「添加SSL绑定」
- 选择「免费证书」,Azure自动生成并绑定SSL证书,全程免费。
方案二:CloudFlare免费SSL
- 开启CloudFlare代理模式(橙色云)
- 在CloudFlare「SSL/TLS」设置中选择「Flexible」或「Full」模式
- 确保Azure Functions的「平台设置」→「SSL设置」允许HTTP请求(或配置HTTPS重定向)
内容的提问来源于stack exchange,提问作者johnykes
相关产品推荐
相关产品推荐

