robots.txt
robots.txt(統一小寫)是一種存放於網站根目錄下的ASCII編碼的文字檔案,它通常告訴網絡搜尋引擎的漫遊器(又稱網絡蜘蛛),此網站中的哪些內容是不應被搜尋引擎的漫遊器取得的,哪些是可以被漫遊器取得的。因為一些系統中的URL是大小寫敏感的,所以robots.txt的檔名應統一為小寫。robots.txt應放置於網站的根目錄下。如果想單獨定義搜尋引擎的漫遊器造訪子目錄時的行為,那麼可以將自訂的設置合併到根目錄下的robots.txt,或者使用robots元數據(Metadata)。
robots.txt協定並不是一個規範,而只是約定俗成的,所以並不能保證網站的私隱。注意robots.txt是用字串比較來確定是否取得URL,所以目錄末尾有與沒有斜槓「/」表示的是不同的URL。robots.txt允許使用類似「Disallow: *.gif」這樣的萬用字元[1][2]。
其他的影響搜尋引擎的行為的方法包括使用robots元數據:
<meta name="robots" content="noindex,nofollow" />
這個協定也不是一個規範,而只是約定俗成的,有些搜尋引擎會遵守這一規範,有些則不然。通常搜尋引擎會辨識這個元數據,不索引這個頁面,以及這個頁面的連出頁面。
例子
[編輯]允許所有的機械人:
User-agent: *
Disallow:
另一寫法
User-agent: *
Allow:/
僅允許特定的機械人:(name_spider用真實名字代替)
User-agent: name_spider
Allow:
攔截所有的機械人:
User-agent: *
Disallow: /
禁止所有機械人造訪特定目錄:
User-agent: *
Disallow: /cgi-bin/
Disallow: /images/
Disallow: /tmp/
Disallow: /private/
僅禁止壞爬蟲造訪特定目錄(BadBot用真實的名字代替):
User-agent: BadBot
Disallow: /private/
禁止所有機械人造訪特定檔案類型[2]:
User-agent: *
Disallow: /*.php$
Disallow: /*.js$
Disallow: /*.inc$
Disallow: /*.css$
非標準擴充協定
[編輯]自動發現Sitemaps檔案
[編輯]Sitemap
指令被幾大搜尋引擎支援(包括Google、Yahoo、Bing和Ask),指定了網站Sitemaps檔案的位置。Sitemaps檔案包含了網站頁面所在的URL的一個列表。Sitemap
指令並不受User-agent
指令的限制,所以它可以放在robots.txt檔案中的任意位置。[3]
唯一要注意的就是要使用網站地圖指令,<sitemap_location>,並將URL的「location」值換成網站地圖的地址,例如,下面就是一個網站地圖指令的例子:
Sitemap: <http://www.example.com/sitemap.xml>
如何編寫Sitemaps檔案,請參考sitemaps.org(頁面存檔備份,存於互聯網檔案館)(英文)上的說明。
Crawl-delay指令
[編輯]幾大抓取工具支援Crawl-delay
參數,設置為多少秒,以等待同伺服器之間連續請求:[4][5]
User-agent: *
Crawl-delay: 10
Allow指令
[編輯]一些大的Crawlers支援一項Allow指令,可以抵消先前Disallow指令。比如Googlebot。[6]
替代
[編輯]雖然robots.txt是最為廣泛接受的方法,但也可以與robots META標籤一起使用。robots META標籤主要是針對一個獨立的頁面設置,與其他的META標籤(如使用的語言、頁面的描述、關鍵詞等)一樣,robots META標籤也是放在頁面的HEAD標籤中,專門用來告訴搜尋引擎robots如何抓取該頁的內容。
<head>
<meta name="robots" content="noindex,nofollow" />
</head>
參考文獻
[編輯]- ^ 使用robots.txt文件阻止或删除网页 (HTML). Google網站站長工具幫助. [2012-10-16]. (原始內容存檔於2012-10-18).
- ^ 2.0 2.1 完全指南:如何写好WordPress博客的robots.txt文件. The Observing Mind. [2013-02-14]. (原始內容 (HTML)存檔於2013-09-15).
- ^ Jerri L.Ledord著馬煜譯. 搜索引擎优化宝典. : 257.
- ^ How can I reduce the number of requests you make on my web site? (HTML). Yahoo! Slurp. [2007-02-08]. (原始內容存檔於2007-02-08) (英語).
- ^ MSNBot is crawling a site too frequently. Troubleshoot issues with MSNBot and site crawling. [2007-02-08]. (原始內容 (HTML)存檔於2007-02-20) (英語).
- ^ 如何攔截Googlebot(谷歌網站站長工具幫助)(簡體中文)
外部連結
[編輯]- The Web Robots Pages(頁面存檔備份,存於互聯網檔案館)
- Robots.txt規範 (頁面存檔備份,存於互聯網檔案館)於Google
- 建立robots.txt檔案 (頁面存檔備份,存於互聯網檔案館)的說明於Google