ads.txt 校验报错怎么修?最常见的几个格式错误是哪些?

4 个讲解板块 · 关联 1 款站内工具 · 内容最后核对 2026-10-08

三段式记录、大写关系字段、放根目录——三条守住,绝大多数报错都会消失。

直接答案

逐条对照格式就能定位。规范记录形如 google.com, pub-0000000000000000, DIRECT, f08c47fec0942fa0:第一段是广告系统的规范域名(写主域,不要写成广告后台那种子域),第二段是发布商账号编号,第三段是关系字段,必须是大写的 DIRECT 或 RESELLER,第四段是可选的认证编号。字段用英文逗号分隔,逗号后可以有空格。

最常见的四类报错是:字段数不足三段(多半是逗号漏了或多打了)、关系字段写成了小写、同一组「域名加账号」重复出现、以及域名写得不规范。另外还有两类不报错但更隐蔽的问题:文件开头带了不可见的 BOM 头导致解析器读失败,以及用了 CRLF 换行在个别解析器上出异常。

ads.txt 的作用是公开声明「哪些广告系统被授权售卖本站的广告位」。买方在投放前会来读这个文件,读不到或读不通,就会降低对该流量的出价,甚至直接跳过。

所以这个文件的容错空间非常小:它不是给人看的说明文档,而是给机器逐行解析的清单。一个不可见的 BOM 头、一个小写的关系字段,都足以让整行被忽略——而站主往往只看到「收益变少」,想不到问题出在一个字符上。

1一条合法记录由什么组成

规范把每行定义成若干个逗号分隔的字段。字段数量有限制,位置也不能调换。

字段位置要求常见错法
域名第一段广告系统的规范域名,写主域写成广告后台子域,或写成自己网站域名
发布商账号第二段由该系统分配的编号,不能空留空,或填成账号邮箱
关系第三段必须大写 DIRECT 或 RESELLER写成小写、写成别的单词、写成中文
认证编号第四段,可选该系统的认证机构编号写成任意字符串;不写不会报错,但买方更偏好带编号的记录

`DIRECT` 与 `RESELLER` 的区别不在大小写,而在链路:前者表示你与这个系统直接签约,后者表示通过中间商转售。填错不会让文件报错,但会让买方判断错你的流量来源,从而影响出价,所以必须按实际关系填。

2最常报的错与修法

下面五类覆盖了绝大多数校验失败的情形,按出现频率排列。

报错成因修法
字段不足三段少打或多打了逗号;或把注释写成了记录逐行数逗号,注释行必须以井号开头
关系字段非法写成了小写或别的词改成大写的 DIRECT 或 RESELLER
记录重复同一组「域名加账号」出现了两次删掉多余的一行,保留信息更全的那条
域名不规范写成路径、写成子域、或带上了协议头只写规范域名,不要带 https:// 或斜杠
存在 BOM 头文件另存为 UTF-8 时勾了带 BOM 的选项重新另存为不带 BOM 的 UTF-8

CRLF 换行通常只会触发警告,但在部分解析器上会直接导致整行被跳过。既然它是不可见的,统一改成 LF 换行是最省事的做法。

3文件该放在哪、怎么被访问

格式对了,位置不对同样无效。这一部分是纯粹的部署要求。

必须放在根域
地址是域名的 /ads.txt,直接放在域根目录下
子目录无效
放在子目录里不会被读取,规则不支持这种写法
子域另行处理
子域需要各自部署;跨域委派有专门的变量指令
返回状态码必须是 200
返回 404、403 或重定向都可能被判定为文件不存在
内容类型建议为纯文本
text/plain 是最稳妥的返回类型
变量行单独占行
形如 OWNERDOMAIN=example.com,变量名习惯用大写
注释以井号开头
只影响该行,不要用它来「注释掉」半行记录

4自查与上线顺序

按这个顺序走一遍,可以避免「本地改对了、线上没生效」这类反复。

  1. 先把所有广告系统的账号与关系整理成一张表:域名、账号、关系、认证编号四列。
  2. 按表格逐行生成记录,不要手打,避免大小写与逗号出错。
  3. 把文件贴进校验工具,读出错误数与警告数;错误必须清零,警告逐条判断是否要改。
  4. 确认文件保存为不带 BOM 的 UTF-8,换行统一为 LF。
  5. 上传到域名根目录,然后直接在浏览器里打开那个地址,确认能看到内容而不是 404。
  6. 用抓包或命令行确认返回状态码是 200、内容类型是纯文本。
  7. 隔一段时间回看一次:新增了广告系统就补记录,停了就删,别让过期的授权一直留着。

相关疑问

不部署 ads.txt 会怎样?

不会导致网站无法访问,但会影响广告收益。买方在投放前会读取这个文件来确认授权链路,读不到时会倾向于降低出价、限制投放量,或者直接跳过这个站点。所以它的收益体现在「不被扣分」上,而不是直接带来收入。

记录了重复会怎样?

规范要求同一组「域名加账号」只出现一次。重复行会让解析器难以判断以哪条为准,校验工具通常按错误处理。修法很简单:保留信息更完整的那一条(例如带认证编号的),删掉其余。

关系字段到底是 DIRECT 还是 RESELLER?

看实际链路,不看习惯。你与该广告系统直接签约、直接结算,就是 DIRECT;通过中间商、代理商或聚合平台接入,就是 RESELLER。不确定时问对接方,不要凭感觉填——填错不会让文件无效,但会让买方误解你的流量来源。

为什么校验通过了,买方那边还是说读不到?

格式与可达性是两件事。校验工具检查的是内容格式,而买方需要能通过网络访问到那个地址。常见原因是文件放在了子目录、域名做了跳转、CDN 缓存了旧的 404,或者服务器对纯文本文件的返回类型设置不对。逐项确认访问链路即可。

内容标识:本页内容由人工智能辅助生成,并经人工核对与编辑。详见 人工智能生成内容标识说明。
内容说明:本页针对具体使用问题作答,方法步骤与数值由本站自行整理与复算,事实性内容以对应官方规范与文档为准。内容最后核对日期:2026-10-08。若发现错误,欢迎通过页脚反馈入口告知。