控制搜索引擎索引删除

Controlling Search Engine Index Removals

我的网站有一些特定的页面是:

  1. 已在搜索引擎中编入索引,但我想将它们从索引中删除。
  2. 很多,因为它们是动态的(基于查询字符串)。
  3. 有点"heavy."(过度热心的机器人会给服务器造成比我想要的更大的压力。)

因为#2,我打算让它们慢慢自然去除,但我需要制定一个计划。

我是通过以下操作开始的:

  1. Bots:在应用程序中使用 user-agent 检测中止执行,并发送基本为空白的响应。 (我不介意某些漫游器是否溜过并呈现真实页面,但我只是阻止了一些常见的。)
  2. 机器人程序:抛出 403(禁止)响应代码。
  3. 所有客户:发送"X-Robots-Tag: noindex"header.
  4. 所有客户:添加 rel="nofollow" 到指向这些页面的链接。
  5. 没有禁止机器人访问 robots.txt 中的那些页面。 (我认为只有从一开始就禁止机器人才有用,否则在这些页面从搜索引擎中完全删除之后;否则,引擎无法crawl/access 那些页面到 discover/honor 的 noindex header,所以他们不会删除它们。我提到这个是因为我认为 robots.txt 可能经常被误解,并且它可能被建议为不合适的银子弹。)

然而,从那时起,我认为其中一些步骤对我的目标来说要么毫无用处,要么实际上有问题。

计划的其余部分似乎还可以(如果我错了请纠正我),但我不确定宏伟计划中的上述项目符号。

我觉得这个方案不错:

  1. Bots:在应用程序中使用 user-agent 检测中止执行,并发送基本为空白的响应。 (我不介意某些漫游器是否会溜过并呈现真实页面,但我只是阻止了一些常见的。)
  2. 机器人程序:发送 410(消失)响应代码。
    "In general, sometimes webmasters get a little too caught up in the tiny little details and so if the page is gone, it's fine to serve a 404, if you know it's gone for real it's fine to serve a 410,"
    - http://goo.gl/AwJdEz
  3. 所有客户:发送"X-Robots-Tag: noindex"header。我认为这对于获得 410 的已知机器人来说是无关紧要的,但它会涵盖未知引擎的机器人。
  4. 所有客户:将 rel="nofollow" 添加到指向这些页面的链接。这可能不是完全必要的,但不会有什么坏处。
  5. 不要 禁止机器人访问 robots.txt 中的那些页面。 (只有从一开始就禁止机器人才有用,否则在这些页面从搜索引擎中完全删除之后;否则,引擎无法crawl/access那些discover/honor 和 noindex header 的页面,所以他们不会删除它们。我提到这个是因为我认为 robots.txt 可能经常被误解,并且它可能被建议为不合适的灵丹妙药。 )