robots.txt二十周年,地球人对搜索引擎的胜利

今年的6月30日是robots.txt诞生二十周年,他比变形金刚的诞生晚了整整十年。

robots.txt的诞生

robots.txt君子协议

robots.txt君子协议

robots.txt的创造发明者叫马丁·科斯特(Martijn Koster)。1994年时,他在英国的一家叫Nexor的网络安全公司任职。当时互联网的条件和现在天差地别,搜索引擎的爬虫(Robots或Spider)随便抓几下可能就让你的网站瘫痪了,更不用说流量上也是额外的负担。为了解决问题,在他提出了一个以robots.txt实现的标准规范。在他提出这个规范(the Standard for Robot Exclusion)后,当时的大型搜索引擎包括WebCrawler,Lycos和AltaVista很快就接受了。时至今日,大部分搜索引擎都遵守这个规定(Robots Exclusion Protocol)。

现在看来这段故事是非常可笑的,因为当时的网站们所考虑的是网站的带宽而不是是否被搜索引擎索引。在robots.txt问世之后网站就可以明确地告诉搜索引擎哪些内容允许漫游抓取,而哪些内容请勿触碰。这无异于给赤裸的网站穿上了一件衣服,仅仅裸露出该网站觉得值得裸露的部位。

robots.txt的诞生具有着重要意义,就是网站的隐私得到了较大限度的保护。这是对“偷窥狂”搜索引擎的胜利。

robots.txt的使用

robots.txt的使用过程中需要把握以下技巧:

  1. 每个域名都必须具有一个robots.txt文件,放置于网站根目录。
  2. 文件名必须为小写。
  3. 提前应用robots.txt,搜索引擎并非每次都检查robots.txt。比如谷歌大约一周检查一次。所以在下次检查之前,你的页面还是会被索引。
  4. robots.txt所包含的URL为大小写敏感。分清大小写才能有效排除索引。
  5. robots.txt不是死链提交工具,想要删除死链索引还是应该登陆各搜索引擎站长平台提交。
  6. robots.txt只做减法,有没有这个文件的区别即是去不去做这个排除。删除robots.txt意味着完全开放爬虫漫游。
  7. robots.txt只防君子不防小人。历史上发生过多次违反robots.txt的事件。网站要把机密信息放到登陆后。
  8. 要想严格不让搜索引擎索引还是推荐用noindex标签

在robots.txt之外,你也可以使用HTML标签来防止页面被索引。

<meta name=”robots” content=”noindex” />

但这样做也有它的缺点。首先是他仅对HTML有效,对图片不起作用。其次是虽然拒绝了索引,该页面还是会被爬虫遍历到。

关于robots.txt的更详细的用法请参考WikipediaRobotsTxt

大家的胜利?

既然网站可以要求搜索引擎停止收录指定内容,那么作为普通地球人是否可以要求搜索引擎停止收录和自己相关的信息呢?

2014年5月13日,欧盟法院裁决了所谓“被遗忘权”(Right to Be Forgotten)。当个人资料的公开损害到个人利益和这种公开不符公共利益这两个条件具备的时候,民众有权行使“被遗忘权”,这对Google等搜寻引擎公司产生了巨大影响。5月29日,Google制作了一个网络表单(Webform)以接受欧洲民众的请求,Google另组成了一个独立委员会,以建议与确保Google在欧洲履行新的隐私保护责任,当中成员包括了维基百科创办人之一的吉米·威尔士。

在robots.txt二十周年之际我们似乎看到了希望。

那些逗比的robots.txt

本博文部分参考了Brain Ussery的博文ROBOTS.TXT DISALLOW: 20 Years of Mistakes To Avoid,非常值得阅读。在文章中他列举了三个逗比的网站中的robots.txt注释。

Nike Store的Just Crawl It:

Nike Store的robots.txt

Nike Store的robots.txt(点击放大)

Etsy的疯狂Sitemap:

Etsy的robots.txt

Etsy的robots.txt(点击放大)

Yelp的对蛛弹琴:

yelp的robots.txt

Yelp的robots.txt(点击放大)

最后加上Google的逗比robots.txt:

robots.txt二十周年Google的彩蛋

robots.txt二十周年Google的彩蛋

T-1000和T-800是终结者的两个型号,谷歌还是要保护他们的两个创始人Larry Page和Sergey Brin。

标签为: ,