Azure App Service配置Front Door后无法解析SCM域名的方案咨询
解决Azure App Service禁用公网访问后SCM站点访问及部署失败问题
核心问题分析
当App Service禁用公网访问并通过Azure Front Door专用端点提供服务时,SCM(Kudu)站点的访问路径未正确配置私有网络路由和DNS解析,导致域名无法解析或无法连通。
正确配置步骤
1. 确认专用端点覆盖范围
检查Front Door创建的App Service专用端点,确保其同时关联主站点和SCM站点的专用链接资源:
- 在Azure门户的专用端点配置中,验证"目标子资源"是否包含
sites和scmsites两个选项,确保两者都已选中。
2. 修正私有DNS区域配置
SCM站点的专用链接后缀为privatelink.scm.azurewebsites.net,需单独创建对应私有DNS区域并配置记录:
- 创建私有DNS区域
privatelink.scm.azurewebsites.net - 在该区域内添加A记录:
myapp A 10.0.1.XXX - 原有的
privatelink.azurewebsites.net区域保留主站点的A记录:myapp A 10.0.1.XXX注意:SCM站点的DNS记录不需要加
.scm前缀,因为区域本身已包含.scm.azurewebsites.net的后缀,解析后会对应myapp.scm.azurewebsites.net
3. 确保自托管代理网络连通性
- 运行自托管代理的Linux VM必须与App Service专用端点所在的虚拟网络连通(可通过VNet对等连接、VPN或ExpressRoute实现)
- 配置VM所在子网的NSG规则,允许出站443端口流量到App Service专用端点的IP地址(10.0.1.XXX)
4. 调整Pipeline部署配置
- 移除VM中
/etc/hosts的手动映射,依赖私有DNS解析确保域名正确指向私有IP - 在Azure Pipeline的部署任务中,确保使用支持私有网络访问的部署方式:
- 使用Azure CLI任务部署时,添加
--private-endpoint参数指定专用端点 - 或在App Service的应用设置中添加
WEBSITE_DNS_SERVER,设置为私有DNS服务器的IP地址,确保部署过程中DNS解析走私有网络
- 使用Azure CLI任务部署时,添加
5. 修复Azure门户Log Stream访问
- 若要从本地访问门户的Log Stream,需将本地网络通过VPN连接到App Service所在的Azure VNet,确保请求路由到私有网络
- 或使用Azure Bastion登录到VNet内的VM,通过该VM访问Azure门户,此时Log Stream的请求会通过私有网络到达SCM站点
内容的提问来源于stack exchange,提问作者Crayons
相关产品推荐
相关产品推荐

