在網站優化系列中,一個網站的robots.txt文件是必不可少的。很多seo會忽略了robots.txt的重要性,網站上出現了一些404頁面或者不想讓搜索引擎了解的內容的時候,就會運用到它了。我們下面就談談robots.txt一些最實用、最簡單的應用。
常見搜索引擎名稱:
Baiduspider 百度;
Scooter Vista;
ia_archiver Alexa;
Googlebot 谷歌;
FAST-WebCrawler Fast;
MSNBOT Msn
我們常見的語法中:Disallow該項定義域用來描述希望不被索引的URL路徑;allow該項定義域用來描述可以被索引的URL路徑,但是由於缺省值是允許索引所以該項定義域會很少使用到。例如我們如果要禁止百度指數抓取,那麼我們該怎麼寫呢?如下:
User-agent:Baiduspider
Disallow:/
講解:這裡user-agent是針對百度蜘蛛的,而谷歌是沒有蜘蛛的,谷歌的搜索引擎叫機器人,而disallow禁止了所有“/”目錄下的文件,這裡的斜槓是根目錄(一般是wwwroot下的文件)。
我們如果禁止所有搜索引擎,唯獨百度可以抓取改怎麼寫呢?如下:
User-agent:Baiduspider
Disallow:
User-agent: *
Disallow: /
講解:這裡網站主要針對百度說,我對你是開放的,而對其他所有的除百度意外的搜索引擎都對他們不開放我的目錄。這裡的“*”是指所有,接下來的disallow禁止了所有根目錄的索引。
我們如果禁止搜索引擎讀取某個文件夾,如何寫呢?如下:
User-agent:*
Disallow:/a/
Disallow:/abc/
Disallow:/data/
講解:這裡網站說明了針對所有的搜索引擎禁止訪問我的a文件裡面的任何文件,以及abc文件和data文件。這是如果你想禁止包含該文件名以及以該文件名為路徑的話,將後面的斜槓去掉,如下:
User-agent:*
Disallow:/a
Disallow:/abc
Disallow:/data
講解:這裡不光禁止了該文件,同時也禁止以該文件命名的url路徑對搜索引擎的索引。一般情況下很少運用到。
現在我們有很多網站不能實現靜態,很多網站都做了偽靜態,但是有部分的動態路徑仍被搜索引擎索引了怎麼辦呢?我們可以添加如下規則:
User-agent:*
Disallow:/*?*
講解:這裡的“*”代表所有帶有“?”的路徑將會被禁止索引,有的可能變量不是“?”而是“$”,同樣道理將“?”替換成“$”就能實現了。
以上我說的這幾種都是我們最常見以及最容易忽略的問題。一個好robots.txt規則就能為網站加分,如果沒有寫好很可能會搜索引擎不抓取。只要我們做好每個小細節的優化,網站的用戶體驗將會越來越好。