安裝完 WordPress 站點後關於 robots.txt 文件的書寫一直煩惱着很多站長,Robots.txt 文件協議又叫搜索引擎機器人協議,搜索引擎爬蟲在爬取網站的時候,首先會看網站根目錄下是否有 robots.txt 文件,然後遵循 robots.txt 協議爬取網站主希望搜索引擎爬取的內容。 robots.txt 文件意在告訴搜索引擎爬蟲哪些頁面可以爬取,哪些頁面不能爬取,可以有效的保護用户的隱私,同時也有利於節省蜘蛛的帶寬,從而讓蜘蛛爬取更加容易,促進收錄。
先來簡單的説下 robots.txt 文件的規則:
1 、允許所有的搜索引起爬取任何內容
User-agent:*
Disallow:
這個意思就是允許所有的搜索引擎爬取所有的頁面,雖然 Disallow 是不允許的意思,但是後面是放空狀態,這意思是沒有不允許爬取的頁面。
2 、屏蔽其中一種或者幾種搜索引擎的爬取,以最近比較火的 360 綜合搜索為例
User-agent:360spider
Disallow:/
User-agent:*
Disallow:
前兩行的意思是不允許 360 綜合搜索蜘蛛爬取任何頁面,後面的解釋見第一點。同理,如果除了屏蔽 360 綜合搜索也想屏蔽百度蜘蛛,那就在開頭繼續添加。
3 、不允許搜索引擎抓取其中的某些頁面,這邊以不允許所有搜索引擎爬取 WordPress 的管理後台頁面為例
User-agent:*
Disallow:/wp-admin/
我們都知道,WordPress 的管理後台在根目錄下的 wp-admin 文件夾裏面,在 disallow 後面加上/wp-admin 的意思就是不允許搜索引擎蜘蛛爬取。
至於不允許百度爬取後台,允許其他搜索引擎爬取後台,或者不允許 360 綜合搜索爬取後台,允許其他搜索引擎爬取後台等等組合,請參考以上三點內容進行組合。
再來説下 WordPress 的 robots.txt 文件書寫,其實 WordPress 的 robots 文件很簡單,主要看 3 個要點:
1 、網站後台不要蜘蛛爬取
首先設置不讓搜索引擎抓取 WordPress 後台頁面,這幾乎是每個站長設置 robots.txt 文件首要的目的,不僅侷限於 WordPress,當然,不同的類型網站後台頁面所在頁面的文件夾名稱不一樣。
2 、靜態化後,動態 url 不要蜘蛛爬取
WordPress 的 url 最好還是靜態化下,因為過多的動態參數不利於蜘蛛的爬取。但很多站長在靜態化 url 之後,每次發佈文章時,搜索引擎收錄總會同時收錄靜態的 url 和動態的 url,這樣明顯會導致文章頁面權重的分散,而且會導致重複頁面過多最終受到搜索引擎的懲罰,其實避免這種情況的方法很簡單,那就是在 robots.txt 文件裏面設置,讓蜘蛛不爬取動態 url,這樣動態的 url 就不會被百度收錄。
3 、結尾加上 xml 格式的網站地圖
在 robots.txt 的結尾加上網站地圖,可以讓網站地圖在蜘蛛爬取網站的時候第一時間被抓取,更利於頁面的收錄。
於是,最簡單的 WordPress 的 robots.txt 的書寫如下
User-agent:*
Disallow:/wp-admin/
Disallow:/*?*
#這意思是不抓取中包含? 的 url,動態 url 特徵是有?#
Sitemap:http://www.yourdomain.com/sitemap.xml
去掉含有 #的那行,以及將 sitemap 中的 yourdomain 改成你的域名即可,這樣一個 WordPress 的 robots.txt 文件就完成了,最後將這文件上傳到根目錄下即可。
Robots.txt 文件書寫還有幾點需要注意的:
1 、斜槓問題
首先開頭的斜槓是一定要的,結尾有斜槓的話意思是這個目錄下的所有頁面,如果沒有斜槓那屏蔽的既有包括斜槓的,也有不包括斜槓的,比如/wp-admin.html,/wp-admin.php 等等頁面 (舉例) 。這是兩個不同的概念,必須根據需要考慮後面是否加上斜槓。
2 、大小寫問題
除了每行的首字母之外,其他都必須小寫。
3 、 Disallow 和 Allow
其實對於很多新手站長來説,掌握其中一種的寫法足以,因為同時被灌輸這兩種寫法很容易導致混繞,所以如果你是新手,那麼 robots.txt 文件最好只使用一種方法即可,防止混繞造成錯誤。