为什么Google搜索结果中包含robots.txt中不允许的页面?


18

我的网站上有一些网页想要与搜索引擎保持距离,因此我在robots.txt文件中禁止这样的网页:

User-Agent: *
Disallow: /email

但是我最近注意到,Google有时仍会在搜索结果中返回指向这些页面的链接。为什么会发生这种情况,我该如何制止呢?

背景:

几年前,我为一个我的亲戚所涉及的俱乐部制作了一个简单的网站。他们想在其页面上添加电子邮件链接,因此,试图防止这些电子邮件地址以过多的形式出现垃圾邮件列表,不是使用直接mailto:链接,而是使这些链接指向在我自己的站点上运行的简单重定向器/ 地址收集器陷阱脚本。该脚本将返回到实际mailto:URL 的301重定向,或者,如果它检测到可疑的访问模式,则返回一个页面,该页面包含许多随机的虚假电子邮件地址以及指向更多此类页面的链接。为了使合法的搜索机器人远离陷阱,我设置了robots.txt上面显示的规则,不允许使用合法重定向程序链接和陷阱页面的全部空间。

然而,就在最近,该俱乐部中的一个人在Google上搜索了自己的名字,当第一页上的一个结果是指向重定向脚本的链接时,感到很惊讶,其标题由电子邮件地址组成以我的名字 当然,他们立即向我发送电子邮件,并想知道如何从Google的索引中删除其地址。我也很惊讶,因为我根本不知道Google会完全索引这样的URL,这似乎违反了我的robots.txt规则。

我确实向Google提交了删除请求,该请求似乎奏效了,但我想知道Google为什么和如何绕开我的robots.txt请求,以及如何确保不允许的页面不会显示在他们的网站上搜索结果。

附言 实际上,在准备此问题时,我实际上找到了可能的解释和解决方案,我将在下面发布该解释和解决方案,但是我认为无论如何,如果有人可能遇到相同的问题,我还是会提出来。请随时发布您自己的答案。我也想知道其他搜索引擎是否也这样做,以及相同的解决方案是否也适用于他们。


1
“以及Google 如何规避我的robots.txt”,我想您已经知道了这一点(或者您最初将如何建立一个网站),但万一有些不幸的傻瓜流连忘返...该robots.txt文件就像某人车道旁的小“禁止擅自进入”标志。这不是魔术,并且(除非有访客明确要求,否则)他们可以漫步到您的住所而不会受到其存在的轻微影响。互联网上有与之类似的泛光灯和剃须刀围栏,但如果您想要的robots.txt是不是。
Parthian Shot

Answers:


25

robots.txt如果存在从他们抓取的其他页面指向这些URL的链接,则Google似乎故意在索引中包含了不允许的URL。引用其网站站长工具帮助页面

“尽管Google不会抓取或索引被robots.txt阻止的页面的内容,但如果我们在网络上的其他页面上找到了这些URL,我们仍然可以为这些URL编制索引。因此,该页面的URL以及可能的其他URL公开可用的信息,例如网站链接中的锚文本或Open Directory Project(www.dmoz.org)的标题,都可以显示在Google搜索结果中。”

显然,Google将其中的Disallow指令解释robots.txt为禁止抓取页面,而不是为其编制索引。我认为从技术上讲这是一个有效的解释,即使它确实散布着对我不利的规则。

这篇采访文章中,来自Google的Matt Cutts提供了更多背景知识,并提供了合理的解释,说明了他们为什么这样做:

“在早期,很多非常受欢迎的网站根本都不想被抓取。例如,eBay和《纽约时报》不允许任何搜索引擎,或者至少不允许Google对其进行抓取。国会图书馆的各个部分都表示不允许您使用搜索引擎进行爬网,因此,当有人来到Google并输入eBay时,我们没有爬网eBay,也无法退回eBay,看起来不太理想。因此,我们决定提出的妥协是,我们不会从robots.txt中抓取您,但是我们可以返回看到的URL参考。”

在这两个页面上推荐的解决方案是向您不想索引的页面添加一个noindexmeta标签。(X-Robots-TagHTTP标头也应适用于非HTML页面。不过,我不确定它是否可用于重定向。)矛盾的是,这意味着您必须允许 Googlebot抓取这些页面(通过将其robots.txt完全删除或(通过为Googlebot添加单独的,更宽松的规则集),否则,它一开始就看不到meta标签。

我已经修改了重定向/蜘蛛陷阱脚本,以发送X-Robots-Tag带有值的meta标签和标头,noindex,nofollow并允许Googlebot抓取我的中的脚本URL robots.txt。Google会对我的网站重新编制索引后,我们将查看它是否有效。


5

的确,尽管这样做可以防止Google(和优秀的bot)抓取这些页面并阅读其内容,但是如果它们链接到SERP,则它们仍然可以在URL中显示仅URL链接,其形式为:

Google SERP中仅URL链接

如您所见,没有标题或描述,实际上只是URL。自然,除非您明确搜索,否则通常不会从SERP中删除这些类型的结果。

就像您在答案中提到的那样,如果您根本不希望URL在SERP中出现,那么您需要允许机械手,但要包含noindex元标记。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.