原文:http://javascriptkit.com/howto/robots.shtml
譯 者:Tony Qu,BluePrint翻譯團(tuán)隊(duì) 有一種力量其實(shí)一直在滲入大量的網(wǎng)站和頁面,我們通常看不到它們,而且它們通常也很蠻橫,大部分人甚至不知道它的存在,大家不要誤會,其實(shí)我說得是搜索引擎爬蟲和機(jī)器人。每天,上百個(gè)這樣的爬蟲會出來對網(wǎng)站進(jìn)行快速的搜索。不管是不是google打算對整個(gè)網(wǎng)絡(luò)進(jìn)行索引,還是spam機(jī)器人打算收集大量的 email地址,通常它們這樣的尋找是漫無目的的。作為網(wǎng)站擁有者,我們可以通過一個(gè)叫做robots.txt的文件來控制哪些動(dòng)作是機(jī)器人可以做的。
創(chuàng)建robots.txt文件
好,現(xiàn)在我們開始行動(dòng)。創(chuàng)建一個(gè)叫robots.txt的文本文件,請確保它的文件名是正確的。該文件必須上傳到在您的網(wǎng)站的根目錄下,而不是二級目錄下(例如,應(yīng)該是http://www.mysite.com,而不是http: //www.mysite.com/stuff),只有滿足以上兩點(diǎn),即文件名正確和路徑正確,搜索引擎才會根據(jù)該文件中的規(guī)則工作,否則 robots.txt僅僅只是個(gè)常規(guī)文件而已,沒有任何作用。
現(xiàn)在,你已經(jīng)知道如果這個(gè)文件該如何命名,以及應(yīng)該把它上傳在何處,接下來你會學(xué)習(xí)在這個(gè)文件中鍵入命令,搜索引擎會遵循一個(gè)叫做“機(jī)器人排除協(xié)議”(Robots Exclusion Protocol)的協(xié)議。其實(shí),它的格式很簡單,并且能夠滿足大多數(shù)的控制需要。首先是一行USERAGENT用來識別爬蟲類型,緊跟著的是一行或者多行DISALLOW,這些行是用來限制爬蟲訪問網(wǎng)站的一些部分的。
1) robots.txt基本設(shè)置
User-agent: *
Disallow: /根據(jù)以上的聲明,所有的爬蟲(這里用*表示出來)均不允許對您的網(wǎng)站的任何部分進(jìn)行索引,這里的/表示所有頁面。通常情況下這不是我們需要的,但這里僅僅是讓大家有個(gè)概念而已。
2) 現(xiàn)在讓我們做一些小小的改動(dòng)。盡管每個(gè)站長都喜歡Google,但是你可能不希望Google的鏡像機(jī)器人挖掘你的網(wǎng)站,也不希望它把你的網(wǎng)站的鏡像放在網(wǎng)上,實(shí)現(xiàn)在線搜索,如果僅僅是為了節(jié)省你的網(wǎng)站所在的服務(wù)器的帶寬,下面的聲明可以做到這一點(diǎn)
User-agent: Googlebot-Image
Disallow: /3) 以下代碼不允許任何一個(gè)搜索引擎和機(jī)器人挖掘目錄和頁面信息
User-agent: *
Disallow: /cgi-bin/
Disallow: /privatedir/
Disallow: /tutorials/blank.htm4) 你還可以對多個(gè)機(jī)器人設(shè)置不同的目標(biāo),看看下面的代碼
User-agent: *
Disallow: /
User-agent: Googlebot
Disallow: /cgi-bin/
Disallow: /privatedir/這個(gè)設(shè)置很有趣,這里我們禁止了所有的搜索引擎對于我們的網(wǎng)站的挖掘操作,除了google,在這里Google被允許訪問除了 /cgi-bin/和/privatedir/以外的所有站點(diǎn)。這里說明,規(guī)則是可以定制的,但不是繼承而來的。
5) 有另外一種使用Disallow的方法:即允許訪問網(wǎng)站所有內(nèi)容,其實(shí)只要冒號后不輸入任何東西就可以了
User-agent: *
Disallow: /
User-agent: ia_archiver
Disallow:在這里,除了alex以外的所有爬蟲都不允許搜索我們的網(wǎng)站
6) 最后,一些爬蟲現(xiàn)在支持Allow規(guī)則,最著名的就是Google。正如這個(gè)規(guī)則的名字所說,”Allow:”允許你精確的控制那些文件或者文件夾是可以被訪問的。然而,這個(gè)文件目前還不是robots.txt協(xié)議的組成部分,所以我建議只有在必須使用時(shí)才使用它,因?yàn)橐恍┎粔蚵斆鞯呐老x可能認(rèn)為它是錯(cuò)誤的。
下面的內(nèi)容來自于Google’s的FAQs for webmasters,如果你希望除了Google以外的爬蟲都不挖掘你的網(wǎng)站,那么以下的代碼是做好的選擇
User-agent: *
Disallow: /
User-agent: Googlebot
Allow: /