Facebook应用添加iOS平台时app-ads.txt验证失败问题咨询
Facebook iOS平台app-ads.txt验证失败排查与解决方法
核心配置错误修正
首先修正app-ads.txt的标准内容,你之前测试的多版内容存在格式错误,符合Facebook验证要求的单条内容仅需保留:
facebook.com, <你的Facebook应用ID>, DIRECT, c3e20eee3f780d68
注意要点:
- 第二个字段必须填写Facebook开发者后台生成的应用ID,禁止填写iOS应用对应的Apple ID
- 所有权验证场景必须使用
DIRECT标识,替换为RESELLER无法通过校验 - 写入
apple.com、App Store页面地址的写法完全不符合规范,Facebook爬虫无法识别这类内容,必须全部删除 - 文件保存为UTF-8无BOM编码,不要添加多余空行、注释、特殊字符,仅保留上述单行内容即可
文件托管规则排查
- 文件必须上传至域名根目录,最终访问路径为
https://你绑定的域名/app-ads.txt,不得放在子目录下,必须启用HTTPS,使用有效公开信任的SSL证书,禁止使用自签名证书、过期证书 - 文件返回的
Content-Type必须为text/plain,不得返回HTML、二进制流等其他格式 - 域名不得开启访问拦截,包括但不限于密码访问、人机验证、CDN安全拦截(如5秒盾、验证码校验),否则Facebook爬虫无法正常抓取文件
- 检查域名根目录下的
robots.txt规则,不得存在禁止爬虫抓取/app-ads.txt路径的配置
后台配置一致性排查
- iOS平台填写的Bundle ID必须和App Store上架安装包的Bundle ID完全一致,大小写不得有偏差
- iPhone、iPad端Store ID必须填写App Store应用对应的纯数字ID,不得带
id前缀或其他多余字符 - App Store Connect中应用信息页填写的营销网址、隐私政策网址对应的根域名,必须和你上传app-ads.txt文件的域名完全一致,Facebook爬虫会优先匹配App Store元数据中预留的域名抓取文件,域名不匹配会直接判定验证失败
- 填写的Shared Secret必须为App Store Connect中对应应用的内购共享密钥,不得错填其他平台、其他应用的密钥
验证操作注意事项
- 每次修改文件或后台配置后,先用浏览器隐身模式直接访问app-ads.txt路径,确认无跳转、无拦截、内容显示正确
- Facebook的抓取缓存有效期为24-48小时,修改配置后不要立刻触发验证,等待缓存过期后再操作
- 触发验证时点击「Confirm ownership」查看具体报错明细,不要仅参考通用错误提示判断问题;也可在开发者后台的告警中心查看抓取失败的具体原因
内容的提问来源于stack exchange,提问作者Tonald Drump
相关产品推荐
相关产品推荐

