Google Ad Manager仅主域名广告不展示问题求助
问题背景
我的网站此前一直正常展示广告(上次修改为5个月前),但本周生产环境(主域名)的广告突然停止显示,不过localhost环境正常。我们使用部署在AWS上的Angular应用,通过Google Ad Manager管理广告。我曾怀疑是防火墙问题,禁用所有防火墙测试后无改善;甚至将整个部署迁移至Vercel,问题仍存在。期间发现除主域名外,其他所有域名(包括localhost)的广告均能正常展示。Google Ad Manager的配置未做任何更改。我尝试联系谷歌,但每次都报错,论坛也无回应。附上Google控制台广告示例截图及广告请求数据几乎全为null的截图。
排查步骤
核对Ad Manager域名授权
登录Google Ad Manager后台,进入「库存」>「网站」,确认主域名是否在已授权列表中,无违规标记或未验证状态。谷歌可能会自动检测域名内容变化,触发临时限制,哪怕代码没改动。检查广告单元的域名定向规则
打开目标广告单元的设置,查看「定向」>「网站」配置,确认没有误添加主域名的排除规则,也没有把定向范围仅限测试域名/localhost。分析主域名的广告请求细节
用Chrome DevTools「网络」面板过滤ads相关请求:- 查看响应状态码,是否存在403/404等错误
- 确认请求头的
Referer是否正确指向主域名,排查Angular路由重写导致的Referer异常 - 查看响应内容,是否有明确拒绝原因(如「未授权域名」「无可用库存」)
验证合规设置对广告的影响
检查主域名的Cookie consent配置,若默认拒绝所有Cookie,会触发谷歌广告的合规拦截。可临时关闭合规插件测试,看广告是否恢复。确认广告库存与交付状态
查看广告单元的「交付」状态,排查是否因广告主投放结束、库存耗尽或定价规则变更导致无广告填充。同时在「报告」>「交付性能」中查看主域名的请求量、填充率数据,区分是请求未发出还是无填充。隔离Angular框架的干扰
把主域名的广告单元代码复制到静态HTML文件,部署到主域名下直接访问。若静态页面能正常显示广告,说明是Angular的路由、渲染逻辑或第三方插件(如广告拦截检测、性能优化工具)干扰了广告加载。
内容的提问来源于stack exchange,提问作者Felipe Scherer

