搜索引擎訪問一個網(wǎng)站時,它首先會檢查該網(wǎng)站的根域下是否有一個叫做robots.txt的純文本文件。Robots.txt文件用于限定搜索引擎對其網(wǎng)站的訪問范圍,即告訴搜索引擎網(wǎng)站中哪些文件是允許它進行檢索(下載)的。
搜索引擎訪問一個網(wǎng)站時,它首先會檢查該網(wǎng)站的根域下是否有一個叫做robots.txt的純文本文件。Robots.txt文件用于限定搜索引擎對其網(wǎng)站的訪問范圍,即告訴搜索引擎網(wǎng)站中哪些文件是允許它進行檢索(下載)的。這就是大家在上??吹降摹熬芙^Robots訪問標準”(Robots Exclusion Standard)。下面我們簡稱RES。 Robots.txt文件的格式:Robots.txt文件的格式比較特殊,它由記錄組成。這些記錄通過空行分開。其中每條記錄均由兩個域組成:
1) 一個User-Agent(用戶代理)字符串行;
2) 若干Disallow字符串行。
記錄格式為: “:”
下面我們分別對這兩個域做進一步說明。
User-agent(用戶代理):
User-agent行(用戶代理行) 用于指定搜索引擎robot的名字,以Google的檢索程序Googlebot為例,有:User-agent: Googlebot
一個robots.txt中至少要有一條User-agent記錄。如果有多條User-agent記錄,則說明有多個robot會受到RES標準的限制。當然了,如果要指定所有的robot,只需用一個通配符“*”就搞定了,即:User-agent: * Disallow(拒絕訪問聲明):
在Robots.txt文件中,每條記錄的第二個域是Disallow:指令行。這些Disallow行聲明了該網(wǎng)站中不希望被訪問的文件和(或)目錄。例如“Disallow: email.htm”對文件的訪問進行了聲明,禁止Spiders下載網(wǎng)站上的email.htm文件。而“Disallow: /cgi-bin/”則對cgi-bin目錄的訪問進行了聲明,拒絕Spiders進入該目錄及其子目錄。Disallow聲明行還具有通配符功能。例如上例中“Disallow: /cgi-bin/”聲明了拒絕搜索引擎對cgi-bin目錄及其子目錄的訪問,而“Disallow:/bob”則拒絕搜索引擎對/bob.html和/bob/indes.html的訪問(即無論是名為bob的文件還是名為bob的目錄下的文件都不允許搜索引擎訪問)。Disallow記錄如果留空,則說明該網(wǎng)站的所有部分都向搜索引擎開放。
空格 & 注釋
在robots.txt文件中,凡以“#”開頭的行,均被視為注解內(nèi)容,這和UNIX中的慣例是一樣的。但大家需要注意兩個問題:
1) RES標準允許將注解內(nèi)容放在指示行的末尾,但這種格式并不是所有的Spiders都能夠支持。譬如,并不是所有的Spiders都能夠正確理解“Disallow: bob #comment”這樣一條指令。有的Spiders就會誤解為Disallow的是“bob#comment”。最好的辦法是使注解自成一行。
2) RES標準允許在一個指令行的開頭存在空格,象“Disallow: bob #comment”,但我們也并不建議大家這么做。
Robots.txt文件的創(chuàng)建:
需要注意的是,應當在UNIX命令行終端模式下創(chuàng)建Robots.txt純文本文件。好的文本編輯器一般都能夠提供UNIX模式功能,或者你的FTP客戶端軟件也“應該”能夠替你轉(zhuǎn)換過來。如果你試圖用一個沒有提供文本編輯模式的HTML編輯器來生成你的robots.txt純文本文件,那你可就是瞎子打蚊子——白費力氣了。
對RES標準的擴展:
盡管已經(jīng)提出了一些擴展標準,如Allow行或Robot版本控制(例如應該忽略大小寫和版本號),但尚未得到RES工作組的正式批準認可。
附錄I. Robots.txt用法舉例:
使用通配符“*”,可設置對所有robot的訪問權(quán)限。
User-agent: *
Disallow:
表明:允許所有搜索引擎訪問網(wǎng)站下的所有內(nèi)容。
User-agent: *
Disallow: /
表明:禁止所有搜索引擎對網(wǎng)站下所有網(wǎng)頁的訪問。
User-agent: *
Disallow: /cgi-bin/Disallow: /images/
表明:禁止所有搜索引擎進入網(wǎng)站的cgi-bin和images目錄及其下所有子目錄。需要注意的是對每一個目錄必須分開聲明。
User-agent: Roverdog
Disallow: /
表明:禁止Roverdog訪問網(wǎng)站上的任何文件。
User-agent: Googlebot
Disallow: cheese.htm
表明:禁止Google的Googlebot訪問其網(wǎng)站下的cheese.htm文件。
上面介紹了一些簡單的設置,對于比較復雜的設置,可參看一些大型站點如CNN或Looksmart的robots.txt文件
附錄II. 相關robots.txt文章參考:
1. Robots.txt常見問題解析
2. Robots Meta Tag的使用
3. Robots.txt檢測程序
評論(0人參與,0條評論)
發(fā)布評論
最新評論