多Azure Web Apps共用域名配子域名,Cloudflare后免手动DNS配置方案
Cloudflare与Azure配置方案(自动子域名路由)
Cloudflare 侧配置(仅需一次)
- 新增泛域名DNS记录:
- 记录类型:
A(若Web App共享同一固定IP)或CNAME(若使用Azure Traffic Manager/Front Door作为统一入口) - 名称:
*(匹配所有xxx.mycompany.com子域名) - 内容:填写你的Azure入口IP(如App Service Plan的共享IP)或入口域名(如Traffic Manager域名)
- 开启橙色云代理(启用DDoS防护、CDN等Cloudflare功能)
- TTL设为自动即可
- 记录类型:
- SSL/TLS模式设置为完全(严格):确保Cloudflare与Azure之间的加密传输有效,需Azure侧配置对应SSL证书。
Azure 侧配置(基础设置一次,脚本集成自动步骤)
一次性域名所有权验证:
- 进入Azure门户,选择任意一个Web App(或通过Azure CLI命令),添加泛域名
*.mycompany.com - 按照Azure生成的验证要求,在Cloudflare中添加对应TXT记录完成验证(仅需操作一次,后续所有子域名无需重复验证)
- 进入Azure门户,选择任意一个Web App(或通过Azure CLI命令),添加泛域名
脚本集成自动绑定子域名:
在创建Web App的脚本中,添加Azure CLI命令绑定对应子域名:az webapp config hostname add --resource-group <你的资源组名称> --name <新创建的Web App名称> --hostname <子域名.mycompany.com>例如传入参数
name1时,执行:az webapp config hostname add --resource-group my-rg --name name1 --hostname name1.mycompany.com泛域名SSL证书配置:
- 申请
*.mycompany.com泛域名证书(可使用Cloudflare Origin CA免费证书或Azure购买的证书) - 将证书上传至Azure App Service,在App Service Plan级别绑定证书(所有同Plan的Web App可共享使用),确保每个Web App的子域名都有有效SSL证书覆盖
- 申请
流量路由逻辑:
Cloudflare将所有子域名流量转发至Azure入口IP后,Azure会根据请求的Host头,自动将流量路由到绑定了对应子域名的Web App,无需额外配置路由规则。
特殊场景处理
- 若Web App分布在多个不同IP的App Service Plan:
- 创建Azure Traffic Manager,将所有App Service Plan的IP添加为端点
- Cloudflare的泛域名记录改为CNAME类型,指向Traffic Manager的域名
- Traffic Manager会根据配置的路由策略(如优先级、性能)将流量分发到对应Web App
内容的提问来源于stack exchange,提问作者user1147862
相关产品推荐
相关产品推荐

