robots.txt文件
robots.txt只能存放于網站的根目錄下,置于除此之外的任何地方均不會被spider發現。
每個網站,或每個域名(包括子域名),只能有一個robots.txt。
文件名“robots.txt”為小寫字母,其他如robots.txt或robots.txt是不正確的,命名錯誤將會被spider忽略。
正如上篇文章中介紹的,spider在網站內找不到robots.txt時將會被重定向到404 錯誤頁面,這便有可能阻礙spider抓取和收錄頁面。雖然這并不一定會發生,但很多時候我們沒必要冒這樣的風險,一般來說,即使我們對網站的所有內容都沒有限制,對所有的搜索引擎spider 都歡迎,最好也在根目錄下創建一個robots.txt文件:
user-agent: *
disallow:
robots.txt的語法規則
在disallow項中使用小寫字母,即文件名和目錄名使用小寫字母,特別在對大小寫敏感的unix下更要注意。
robots.txt惟一支持的通配符是在user-agent使用的“*”,其代表所有的spider。除此之外,別的通配符均不可用。這方面的錯誤常見于在文件名或目錄名中使用通配符。
robots.txt的限定項
在user-agent和disallow項的設定中,每行只允許有一個設定值,同時,注意不要有空行。至于行數,則沒有限制,理論上說可以根據需要創建具有無數行的robots.txt。
下面即是一個錯誤的例子
user-agent: *
disallow: /dir1/ /dir2/ /dir3/
正確設置應為:
user-agent: *
disallow: /dir1/
disallow: /dir2/
disallow: /dir3/
robots.txt中的文件與目錄
既定某個文件拒絕索引時,格式為文件名(包括擴展名),其后無“/”,而限定目錄時,則需在目錄名后加“/”。如下面的示例:
user-agent: *
disallow: /file.html
disallow: /dir/
特別注意的是,不要省略掉目錄名后的“/”,不然,spider便極有可能誤讀相應的設置。
robots.txt中限定項的順序
請看下方的示例:
user-agent: *
disallow: /
user-agent: googlebot
disallow:
該設定本意是想允許google訪問所有頁面,同時禁止其他spider的訪問。但在這樣的設置下,googlebot在讀取前2行后便會離開網站,后面對其的“解禁”完全失去了意義。正確的格式應為:
user-agent: googlebot
disallow:
user-agent: *
disallow: /
robots.txt中的注釋
盡管在robots.txt的標準中,可以在限定項的后面使用“#”添加注釋,如下面的例子
user-agent: googlebot #這是對google的設置
disallow:
但很多研究與測試表明,不少spider對這樣格式的解讀存在問題。為確保其能更好地工作,最好采用如下設置:
#這是對google的設置
user-agent: googlebot
disallow:
新聞熱點
疑難解答