WordPress目前全球有數千萬用戶,包括獨立博客和博客平台,且很多人把Wordpress開發成CMS來使用。Wordpress程序的優越性就不用多說了。
講Wordpress的robots.txt優化之前,先對robots.txt的相關知識普及一下。
robots.txt是一個存放在網站根目錄下的純文本文件(ASCII編碼),這個文件用於指定spider在您網站上的抓取范圍,一定程度上保護站點的安全和隱私。同時也是網站優化利器,例如屏蔽捉取站點的重復內容頁面。
robots.txt目前並不是一種標准,只是一種協議!所以現在很多搜索引擎對robots.txt裡的指令參數都有不同的看待。
使用robots.txt需要注意的幾點地方:
1、指令區分大小寫,忽略未知指令,下圖是本博客的robots.txt文件在Google管理員工具裡的測試結果;
好像還是不支持中文等非英文字符,如需添加中文地址指令,請先轉碼(UTF-8和GBK會有不同的轉碼結果)。
如果想第一時間知道自己寫的robots.txt是否規范,可以用Google管理員工具的“像 Googlebot 一樣抓取”功能。捉取後,點擊“成功”那個鏈接進去,就可以看到Google眼中的robots.txt了。
2、每一行代表一個指令,空白和隔行會被忽略;
3、“#”號後的字符參數會被忽略;
4、有獨立User-agent的規則,會排除在通配“*”User agent的規則之外;
5、可以寫入sitemap文件的鏈接,方便搜索引擎蜘蛛爬行整站內容。
6、盡量少用Allow指令,因為不同的搜索引擎對不同位置的Allow指令會有不同看待。
想了解更多關於robots.txt的“標准化”說明,可以查看robots.txt官網和Google關於robots.txt的說明頁。
轉入正題。因為Wordpress建站設置不同的固定鏈接(或者安裝不同的插件),在寫指令的時候,相應的地址會不同。本博客固定鏈接設置為:/a/%post_id%.html,供參考。
下面開始Wordpress的robots.txt優化之旅,同時請下載本博客的robots.txt邊看邊學優化。
User-agent: *
一般博客的robots.txt指令設置都是面對所有spider程序,用通配符“*”即可。如果有獨立User-agent的指令規則,盡量放在通配“*”User agent規則的上方。
Disallow: /wp-admin/
Disallow: /wp-content/
Disallow: /wp-includes/
屏蔽spider捉取程序文件,同時也節約了搜索引擎蜘蛛資源。
Disallow: /*/trackback
每個默認的文章頁面代碼裡,都有一段trackback的鏈接,如果不屏蔽讓蜘蛛去捉取,網站會出現重復頁面內容問題。
Disallow: /feed
Disallow: /*/feed
Disallow: /comments/feed
頭部代碼裡的feed鏈接主要是提示浏覽器用戶可以訂閱本站,而一般的站點都有RSS輸出和網站地圖,故屏蔽搜索引擎捉取這些鏈接,節約蜘蛛資源。
Disallow: /?s=*
Disallow: /*/?s=*
這個就不用解釋了,屏蔽捉取站內搜索結果。站內沒出現這些鏈接不代表站外沒有,如果收錄了會造成和TAG等頁面的內容相近。
Disallow: /?r=*
屏蔽留言鏈接插件留下的變形留言鏈接。(沒安裝相關插件當然不用這條指令)
Disallow: /*.jpg$
Disallow: /*.jpeg$
Disallow: /*.gif$
Disallow: /*.png$
Disallow: /*.bmp$
屏蔽捉取任何圖片文件,在這裡主要是想節約點寬帶,不同的網站管理員可以按照喜好和需要設置這幾條指令。
Disallow: /?p=*
屏蔽捉取短鏈接。默認頭部裡的短鏈接,百度等搜索引擎蜘蛛會試圖捉取,雖然最終短鏈接會301重定向到固定鏈接,但這樣依然造成蜘蛛資源的浪費。
Disallow: /*/comment-page-*
Disallow: /*?replytocom*
屏蔽捉取留言信息鏈接。一般不會收錄到這樣的鏈接,但為了節約蜘蛛資源,也屏蔽之。
Disallow: /a/date/
Disallow: /a/author/
Disallow: /a/category/
Disallow: /?p=*&preview=true
Disallow: /?page_id=*&preview=true
Disallow: /wp-login.php
屏蔽其他的一些形形色色的鏈接,避免造成重復內容和隱私問題。
Sitemap:http://***.com/sitemap.txt
網站地圖地址指令,主流是txt和xml格式。告訴搜索引擎網站地圖地址,方便搜索引擎捉取全站內容,當然你可以設置多個地圖地址。要注意的就是Sitemap的S要用大寫,地圖地址也要用絕對地址。
上面的這些Disallow指令都不是強制要求的,可以按需寫入。也建議站點開通谷歌管理員工具,檢查站點的robots.txt是否規范。
本站robots.txt裡的指令解釋會永久保留,http://yihuiblog.com/robots.txt。大家可以收藏,方便修改的時候用作參考。
感謝 一灰的BLOG 的投稿