按访客返回不同内容的系统,什么时候会踩到 Cloaking 红线?

按访客返回不同内容的系统,什么时候会踩到 Cloaking 红线?

做服务端的同学每天都在干一件事:对不同请求返回不同内容。A/B 实验按用户分桶、灰度发布按比例放量、多语言站按 Accept-Language 出版本、个性化推荐按登录态渲染——这些都是正当工程手段。

但 SEO 领域有个东西叫 Cloaking(中文圈叫"斗篷"),用的也是同一套工程能力,却是 Google 垃圾内容政策里点名打击的对象。边界到底在哪,网上大部分文章讲得含糊。这篇从工程视角把它说清楚。

官方定义其实只有一句话

Google 在垃圾内容政策里对 Cloaking 的定义是:向人类用户和搜索引擎展示不同内容,典型例子是让爬虫看到一套填充关键词的页面,真实用户看到另一套。

注意关键词:不是"内容有差异",而是差异的目的——让搜索排名建立在"搜索引擎看到、但用户看不到的内容"上。判定看目的和结果,不看技术形态。

三个开发场景逐个对照

1. A/B 测试、灰度发布:通常没问题。 Google 官方文档明确说明,以改进用户体验为目的的临时性页面实验是被接受的,前提是不向爬虫系统性隐藏真实内容、实验结束不长期保留分歧版本。踩线点只有一个:实验早已结束,却给爬虫保留了一个"永远稳定"的专属版本。

2. 多语言、地区适配:没问题。 按 Accept-Language 或 IP 返回对应语言版本是正当服务,差异的受益方是访问者。踩线点:借"适配"的名义,对搜索引擎返回另一套关键词堆砌内容——受益方从用户换成了排名,性质就变了。

3. SSR、CSR、动态渲染:渲染方式本身无关。 判定只看一件事——搜索引擎最终解析到的内容,和用户打开页面看到的内容,是否实质一致。服务端渲染不是护身符,客户端渲染也不是嫌疑犯。

顺便回应一个常见疑问:付费墙和登录墙造成的差异不算 Cloaking,因为那是访问权限问题,内容真实存在,爬虫和付费用户看到的是同一份。

给一个可操作的判定顺序

评估自己系统的时候,按三个问题过一遍:

  1. 差异的受益方是谁? 是访问者(语言、地区、登录态),还是搜索排名?
  2. 搜索引擎看到的那一版,能否代表站点的真实主张? 如果爬虫版和用户版交换,站点敢不敢要爬虫版的排名?
  3. 差异是否稳定长期存在? 临时的实验窗口没问题,长期固化的两套版本才是危险信号。

三问全过,基本不构成 Cloaking;任何一问的答案不对劲,就值得回头查了。

后记

这个话题往深了写还有不少内容:判定时的取证逻辑、动态渲染的索引障碍排查、处罚信号的识别。我把完整的定义解析和官方文档出处整理在了 SEO斗篷的这篇完整定义,另外还做了一份面向站长和开发的内容一致性自查清单,自查顺序可以直接照着跑。欢迎在评论区交流。

评论