Robots.txt 或許是最早製定給搜尋引擎用的 Protocol, 若不算 ODP (Open Directory Project) 這個不算協定的東西, 這從 1994 年就開始, 也就是肯定跟 Google 無關的東西 (終於~~)
Robots Exclusion Standard 主要是為了排除機器人的爬蟲爬到不該爬的資料所設計, 所以是以 "排除" 做設計, 但裏面只有兩個主要的 item:
除外還有些沒有成為標準的項目:
但這些都是為了搜尋引擎設記的, 對於會遵循的搜尋引擎自然不是問題, 但有些中國的搜尋引擎是不太管這些標準的.
在網站而言, robots.txt 是基本的, 至少對 Google 是有效的, 但這有時很難精確到每一個網頁對搜尋引擎以不同的控制, 因此就有了 name 為 robots 的 metadata, 像 Google 甚至有更多控制的選項, 以及對不同 Crawler 的方式, 如:
<meta name="googlebot" content="noindex">
<meta name="googlebot-news" content="nosnippet">
除了 robots.txt 以及 meta data 外, 事實上也可以透過 HTTP 的 Header 來傳遞資訊, 例如:
X-Robots-Tag: noindex
這部份的選項更多了, 如下圖:
不得否認的 Robots.txt 雖然是基本, 但也是可有可無, 因為這算是進階的控制, 而對於沒有注意到的人, 影響不大, 但對於想要進一步排除與控制搜尋引擎的人這是相當重要的, 但這要小心, 因為我曾看過有人不小心把 meta data 就設成 robots noindex, 然後就發生整個網站不被搜錄的慘劇 (不要笑, 我知道是你).