近期 AdSense 用户陆续有收到关于提醒网站添加 ads.txt 文件的通知。本期文章我们带你了解这项计划的细节和操作方式。如果你是 AdSense 新手,欢迎填写表单联系新手客户经理获取帮助。
什么是 ads.txt 文件?
添加授权数字卖方 ( ads.txt ) 计划,可帮助确保你的网站广告资源只通过你认定为已获得授权的卖家(如 AdSense )销售。通过创建自己的 ads.txt 文件后,你可以更好地掌控广告自主权,例如允许谁在你的网站上销售广告,并可防止向广告客户展示仿冒广告资源。
为什么需要添加 ads.txt 文件的作用?
AdSense 团队提醒你尽快添加 ads.txt 文件,避免在今年 8 月出现无法展示部分广告的情况。ads.txt 文件可以帮助广告主识别仿冒广告资源,同时可以帮助网站发布商获得更多广告客户支出,而这些支出原本可能会流向仿冒广告资源。
如何创建自己的 ads.txt 文件?
要创建 ads.txt 文件以公开声明 Google 有权销售你的广告资源,请按以下步骤操作:
1. 创建 1 个文本 ( .txt ) 文件
2. 在该文件中添加下面 1 行:
google.com, pub-0000000000000000, DIRECT, f08c47fec0942fa0
重要提示:请务必用你自己的发布商 ID 替换 pub-0000000000000000
这通常会需要系统 72 小时的时间,才会将后台的警示移除。
请确保你的 ads.txt 文件可被抓取。
如果你是使用 CMS,而不知道该如何上传 ads.txt,我们建议你联系你的 CMS 支持团队。
3. 在你的网域的根级目录下托管你的 ads.txt 文件。例如 https://example.com/ads.txt。
根级网域比公共后缀列表中所列的网域低 1 个级别。例如,“google.co.uk”是“co.uk”的根域,而“maps.google.co.uk”则不是。
我已经都设置好 ads.txt,为什么还在后台看到警示?
1. 请确保你已经为你网页列表中所有状态为【就绪】的网站都添加 ads.txt。
2. 请确保填写的发布商 ID 正确。
3. 在你添加 ads.txt 后,我们系统需要 24 小时去做抓取,抓取后系统需要 2 - 3 天才会在你的账号中撤销警示。因此如果你才刚设置,请耐心等待给系统时间处理。
4. 请确保你 ads.txt 添加在根级目录(设置在 example.com/ads.txt 而非 www.example.com/ads.txt)
ads.txt 文件中有哪些信息?
发布商 ads.txt 列表中的每 1 行都应包含 3 项数据以及 4 个选填字段:
<字段 #1>:
广告投放系统的域名(必填)
出价工具关联的目标 SSP、广告交易平台、标头封装容器等系统的标准域名。该域名可能是用来进行 WHOIS 查询和反向 IP 查询的系统运行域名(如果与相应父级企业域名不同的话),以便为代理系统指明所有权。理想情况下,SSP 或广告交易平台会发布1个文档,在其中详细说明要使用的域名。
对于 Google 卖家帐号,该域名始终是 google.com。
<字段 #2>:
发布商帐号 ID(必填)
与字段 # 1 中广告投放系统内的卖方或转销商帐号相关联的标识符。该字段所包含的值必须与 SSP /广告交易平台所指定字段中的交易(例如 OpenRTB 出价请求)所使用的值相同。在 OpenRTB 中,这通常是 publisher.id 字段。对于 OpenDirect,则通常是发布商的组织 ID。
对于 Google 卖家帐号,请使用每个帐号中显示的发布商 ID(例如 pub-0000000000000000)。
要查找此 ID,请执行以下操作:
在 AdSense 中:登录到你的 AdSense 帐号,然后依次点击帐号 > 帐号信息,即可找到你的主要帐号的发布商 ID。
请注意:只能添加 pub- 前缀和 16 位数字代码。请删除针对特定产品的前缀(例如 ca- 或 ca-video-)。
网站添加完 ads.txt 文件,Google 会如何处理?
如果有任何 ads.txt 文件托管在根网域上,Google 便会使用该文件的内容来确定哪个发布商帐号可以在该网域上投放广告。
如果网站上存在 ads.txt 文件并正确列出了发布商标识符,则 Google 会针对该网站上的请求运行竞价并返回胜出的广告。如果文件中的标识符不正确,则 Google 不会针对请求运行竞价。
系统会自动检测新的和已更新的 ads.txt 文件,但更改可能至少需要 1 周时间才能生效。
如何确保你的 ads.txt 文件可被抓取?
一旦你的网域上设置了 ads.txt 文件,Google 抓取工具就会执行以下操作:
每 24 小时尝试 1 次抓取该文件,反应时间大概需要 3 天
解析该文件的内容,以确定有权通过你的广告资源获利的卖家 ID
为确保你的 ads.txt 文件能够被抓取,我们建议你完成以下排查步骤
步骤一、确认文件未出现暂时不可用的情况
如果先前看到的 ads.txt 文件在后续重新抓取时不可用,则先前看到的条目将会出现以下情况:
如果响应为硬 404 错误(网页实际不存在;HTTP 404 状如果态),将被完全清除。
如果响应为软 404 错误(针对实际不存在的网址返回实际网页;HTTP 200 状态)或服务器错误 500,将被保留最多 5 天。
步骤二、确认文件可以通过根域访问
从 domain.com/ads.txt 到 www.domain.com/ads.txt 的重定向相当常见。Ads.txt 的抓取将从根域开始,而根域需要从 ads.txt 文件返回或重定向到 ads.txt 文件。
www.domain.com/ads.txt 上的 ads.txt 文件只有在 domain.com/ads.txt 重定向到它时才会被抓取。
步骤三、确保抓取操作不被 robots.txt 禁止
如果某个网域中的 robots.txt 文件不允许以下任意 1 项,则抓取工具可能会忽略该网域的 ads.txt 文件:
不允许通过 ads.txt 文件路径进行抓取
示范
ads.txt 文件发在 example1.com/ads.txt 上。example1.com/robots.txt 中包含以下行:
User-agent: *
Disallow: /ads遵守 robots.txt 标准的抓取工具会忽略 ads.txt 文件。
如果遇到此情况,你可以按如下所示修改 robots.txt 文件以允许抓取文件(也可以采用其他方法):
选项 1:修改不允许抓取的路径。
User-agent: *
Disallow: /ads/
选项 2:明确允许 ads.txt;取决于抓取工具对 Allow robots.txt 指令的支持情况。
User-agent: *
Allow: /ads.txt
Disallow: /ads
不允许针对用户代理进行抓取
示范
ads.txt 文件发布在example2.com/ads.txt 上。example2.com/robots.txt 中包含以下行:
User-agent: Googlebot
Disallow: /Google 抓取工具会忽略 ads.txt 文件。
步骤四、确保返回的文件具备 HTTP 200 OK 状态代码
虽然对 ads.txt 文件的请求可能会在响应正文中返回文件内容,但是如果响应标头中的状态代码指示未找到该文件(例如状态代码 404),则:
系统将会忽略该响应
该文件将会被视为不存在
所以,请确保该文件具备 HTTP 200 OK 状态代码。
步骤五、确保文件中没有格式错误或无效字符
格式错误(例如无效的空白字符)可能难以检测,但却会使 ads.txt 文件难以被抓取工具解析,从而可能导致文件被忽略。请避免从富文本编辑器复制和粘贴 ads.txt 条目;我们推荐使用纯文本编辑器。
步骤六、创建通过 HTTP 和 HTTPS 均可访问的 ads.txt 文件
无论在 HTTP 上还是 HTTPS 上,Google 抓取工具都会尝试抓取所有 ads.txt 文件。但是,即使通过 HTTP 对 ads.txt 文件进行抓取,404(或 40X)响应也会导致先前被抓取的条目被完全清除。因此,如果通过 HTTPS 实施的抓取返回 404(或 40X),那么:之前抓取的条目将会被完全清除。
请确保 ads.txt 通过 HTTP 和 HTTPS 均能够被访问。
如果只把 ads.txt 文件托管在子网域上,会怎么样?
Google 会抓取并强制执行放置在子网域上的 ads.txt 文件(前提是此类文件存在,并且根网域上的 ads.txt 文件引用了这些文件)。ads.txt 管理工具尚无法显示已抓取子网域的列表。