You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

GCP Cloud Run域名映射切换Google Search Console后失效求助

Cloud Run 自定义域名映射握手超时故障排查

问题场景

长期通过Terraform管理GCP Cloud Run自定义域名映射,将域名指向Cloudflare代理URL,此前1-2小时即可完成握手流程。近一周握手始终无法结束,期间未变更操作流程及Cloudflare配置,唯一变动是Google Webmaster Tools替换为Google Search Console后,需重新添加域名并将服务账号(SA)设为所有者,推测是底层配置迁移异常导致故障。

核心排查方向

1. 服务账号权限校验

  • 确认Search Console中添加的SA是域名级所有者,而非仅普通用户权限
  • 检查GCP侧SA的IAM角色:必须拥有roles/dns.admin(对应托管该域名的DNS区域)或项目级roles/owner,权限不足会导致GCP无法完成域名归属验证
  • 核对SA邮箱格式:必须是[SA名称]@[项目ID].iam.gserviceaccount.com,避免输入错误

2. 域名验证状态排查

  • 用GCP CLI查看映射状态:gcloud run domain-mappings describe --domain=你的域名 --region=你的区域,重点看status.message字段的错误提示
  • 登录Cloud Run控制台,查看域名映射的「验证状态」,是否明确提示未通过归属验证

3. Terraform状态同步检查

  • 执行terraform state show google_cloud_run_domain_mapping.你的映射资源名,对比GCP控制台的实际状态,确认是否存在配置漂移
  • 重新运行terraform plan,检查是否有未应用的IAM绑定或DNS记录变更,尤其是与域名验证相关的资源

4. Search Console验证方式确认

  • 确保在Search Console中添加域名时选择的是**「域名」验证方式**(而非URL前缀),这种方式会生成全局DNS验证记录,GCP才能识别域名归属
  • 进入Search Console的「所有者」页面,确认SA已出现在所有者列表中,且状态为「已验证」

修复步骤

  1. 先清理卡住的映射:gcloud run domain-mappings delete --domain=你的域名 --region=你的区域
  2. 在Search Console中重新验证SA的所有者权限,确保状态显示「已验证」
  3. 重新通过Terraform apply创建映射,或手动在Cloud Run控制台配置,观察握手流程是否在1-2小时内完成

内容的提问来源于stack exchange,提问作者Dan

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.14 12:30:04