将GoDaddy域名x.app迁移至Azure App Service后遇私密连接错误求助
我帮你梳理几个最可能的问题点,你可以逐一排查:
证书绑定不匹配或未完成
先检查Key Vault里证书的主体名称(Subject)和主题备用名称(SAN),必须包含x.app和*.x.app(如果你的通配符CNAME需要覆盖子域名的话)。另外一定要确认:你已经在App Service的「自定义域名」设置里,把这个证书和x.app域名做了绑定——别光导入证书就结束,得把证书和具体域名关联起来才算完成。DNS记录未完全生效
虽然你修改了GoDaddy的NS记录,但DNS全球同步可能需要几小时(具体时长取决于你设置的TTL值)。你可以用nslookup x.app或者dig x.app命令验证:- A记录是不是指向正确的App Service静态IP?
- NS记录是不是已经换成Azure DNS Zone提供的服务器地址?
如果本地还显示旧记录,试试切换网络或者再等一段时间测试。
域名验证未通过
你提到TXT记录设为@、值是App Service域名——这大概率是个错误!Azure添加自定义域名时,需要你添加专属验证TXT记录:通常名称是asuid(对应根域名x.app),值是Azure给你的一串唯一验证令牌,而不是App Service的域名。如果验证没通过,哪怕绑定了证书,域名也没法正常启用SSL。你可以回到App Service的自定义域名页面,看看域名状态是不是“已验证”,如果不是,重新获取验证字符串并更新TXT记录。证书部署或权限问题
如果你是从Key Vault导入的证书,要确保App Service有访问Key Vault的权限:在Key Vault的「访问策略」里,给App Service的服务主体添加「证书权限」中的「获取」权限。另外,检查证书是不是还在部署中——从Key Vault同步证书到App Service需要一点时间,你可以在App Service的「TLS/SSL设置」里查看证书状态是否为“已绑定”。浏览器缓存干扰
浏览器有时会缓存旧的SSL证书信息,哪怕服务器端已经配置正确。你可以试试用隐私模式访问,或者清除浏览器的SSL缓存,换个浏览器测试,排除本地缓存的影响。App Service SSL设置错误
检查App Service的「TLS/SSL设置」:- 是否开启了「HTTPS only」?如果开启了但证书配置有问题,就会触发报错。
- 证书绑定类型是不是正确?如果用的是A记录(静态IP),可以选IP SSL;如果是CNAME,选SNI SSL即可,别搞混了。
内容的提问来源于stack exchange,提问作者Samy Sammour

