App Engine配置Cloudflare自定义子域名后返回IP列表而非内容如何解决
App Engine自定义子域名对接Cloudflare异常解决方案
返回Google Frontend IP列表的核心原因是Google前端服务未识别到当前请求域名对应的App Engine路由规则,需补充检查以下配置:
- 补全App Engine子域名映射条目:必须在App Engine控制台「自定义域名」板块为每个子域名(web.mydomain.com、api.mydomain.com)添加独立映射,每条映射单独绑定对应的web、api服务,不能仅配置根域名映射默认绑定到default服务。
- 调整Cloudflare SSL加密模式:将对应域名的SSL/TLS加密模式设置为「完全(Full)」或「完全(严格)」,禁止使用「灵活」模式,App Engine默认强制HTTPS回源,灵活模式会触发GFE拒绝请求返回异常内容。
- 调整Cloudflare DNS记录代理状态:先关闭两条子域名CNAME记录的橙色云代理(切换为灰色云DNS-only模式)测试,开启代理时Cloudflare会修改请求Host头,GFE无法匹配已配置的子域名映射规则。后续需要开启代理时,需额外在Cloudflare配置规则保留原始Host头转发。
- 配置dispatch.yaml路由规则:如果你的项目使用路由分发规则,需要在dispatch.yaml中添加子域名和对应服务的绑定规则,示例如下:
dispatch: - url: "web.mydomain.com/*" service: web - url: "api.mydomain.com/*" service: api
配置完成后执行gcloud app deploy dispatch.yaml发布规则即可生效。
- 确认域名验证覆盖范围:如果当初仅完成了根域名的TXT验证,需确认验证范围包含子域名,部分场景下需要单独为子域名添加TXT验证记录才能正常被GFE识别。
内容的提问来源于stack exchange,提问作者John Kas
相关产品推荐
相关产品推荐

