**能不能被搜尋引擎索引到,除了看有沒有向搜尋引擎入口提交、有否與其他站點交換鏈結等之外,還得看根目錄底下的robots.txt檔案有沒有禁止搜尋引擎的收錄。熟練書寫robots.txt語法,是每個seoer所必須掌握的基本技能。seo研究院曾經寫過一篇《seo七十二案例:z-blog優化完全攻略》的具體案例,闡述過如何通過robots.txt來優化z-blog,大家可以先參考下。
以下robots.txt的語法教學部分的寫作參考了一些網路資訊,在此seo研究院表示感謝,寫作過程中,有些內容已經老舊,而seo是不斷發展的,因此視情況對其進行了去偽存真以及相關整理。
一、什麼是robots.txt檔案:
搜尋引擎通過一種爬蟲spider程式(又稱搜尋蜘蛛、robot、搜尋機械人等),自動蒐集網際網路上的網頁並獲取相關資訊。
鑑於網路安全與隱私的考慮,搜尋引擎遵循robots.txt協議。通過根目錄中建立的純文字檔案robots.txt,**可以宣告不想被robots訪問的部分。每個**都可以自主控制**是否願意被搜尋引擎收錄,或者指定搜尋引擎只收錄指定的內容。當乙個搜尋引擎的爬蟲訪問乙個站點時,它會首先檢查該站點根目錄下是否存在robots.txt,如果該檔案不存在,那麼爬蟲就沿著鏈結抓取,如果存在,爬蟲就會按照該檔案中的內容來確定訪問的範圍。
robots.txt必須放置在乙個站點的根目錄下,而且檔名必須全部小寫。
二、robots.txt檔案的語法:
1、**url以及相應的robots.txt的url
http://www.w3.org/對應http://www.w3.org/robots.txt
http://www.w3.org:80/則對應的是http://www.w3.org:80/robots.txt
下面是一些著名站點的robots.txt:
google的robots.txt:http://www.google.com/robots.txt
seo研究院的robots.txt檔案:http://www.dugutianjiao.com/robots.txt
2、robots.txt檔案的格式:
robots.txt檔案應該包含一條或更多的記錄,這些記錄通過空行分開。該檔案中的記錄通常以一行或多行user-agent開始,後面加上若干disallow行,詳細情況如下:
user-agent:
該項的值用於描述搜尋引擎robot的名字,在「robots.txt」檔案中,如果有多條user-agent記錄說明有多個robot會受到該協議的限制,對該檔案來說,至少要有一條user-agent記錄。如果該項的值設為*,則該協議對任何機器人均有效,在「robots.txt」檔案中,「user-agent:*」這樣的記錄只能有一條。
disallow:
該項的值用於描述不希望被訪問到的乙個url,這個url可以是一條完整的路徑,也可以是部分的,任何以disallow開頭的url均不會被robot訪問到。例如「disallow:/help」對/help.html 和/help/index.html都不允許搜尋引擎訪問,而「disallow:/help/」則允許robot訪問/help.html,而不能訪問/help/index.html。任何一條disallow記錄為空,說明該**的所有部分都允許被訪問,在robots.txt檔案中,至少要有一條disallow記錄。如果robots.txt為空檔案,則對於所有的搜尋引擎robot,該**都是開放的。
3、robots.txt檔案用法舉例:
例1. 禁止所有搜尋引擎訪問**的任何部分
user-agent: *
disallow: /
例項分析:**網的 robots.txt檔案
正確的應該是:
user-agent:googlebot
disallow: /
把多個禁止命令放在一行中:
例如,錯誤地寫成
disallow:/css//cgi-bin//images/
正確的應該是
disallow:/css/
disallow:/cgi-bin/
disallow:/images/
行前有大量空格
例如寫成: disallow:/cgi-bin/
儘管在標準沒有談到這個,但是這種方式很容易出問題。
404重定向到另外乙個頁面:
當robot訪問很多沒有設定robots.txt檔案的站點時,會被自動404重定向到另外乙個html頁面。這時robot常常會以處理robots.txt檔案的方式處理這個html頁面檔案。雖然一般這樣沒有什麼問題,但是最好能放乙個空白的robots.txt檔案在站點根目錄下。
採用大寫
user-agent:excite
disallow:
雖然標準是沒有大小寫的,但是目錄和檔名應該小寫,:
user-agent:googlebot
disallow:
語法中只有disallow,沒有allow!
錯誤的寫法是:
忘記了斜槓/
錯誤的寫做:
正確的應該是
下面乙個小工具專門檢查robots.txt檔案的有效性:http://www.searchengineworld.com/cgi-bin/robotcheck.cgi。我們可以通過google sitemap中的robots.txt檢測工具來檢查**上是否存在robots.txt檔案以及該檔案寫法是否正確。
三、robots meta標籤
1、什麼是robots meta標籤
2、robots meta標籤的寫法:
robots meta標籤中沒有大小寫之分,name=」robots」表示所有的搜尋引擎,可以針對某個具體搜尋引擎寫為name=」baiduspider」。content部分有四個指令選項:index、noindex、follow、nofollow,指令間以「,」分隔。