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 邊看邊學優化。
一般博客的 robots.txt 指令設置都是面對所有 spider 程序,用通配符 「*」 即可。如果有獨立 User-agent 的指令規則,儘量放在通配 「*」User agent 規則的上方。
| Disallow: /wp-admin/
Disallow: /wp-content/ Disallow: /wp-includes/ |
屏蔽 spider 捉取程序文件,同時也節約了搜索引擎蜘蛛資源。
每個默認的文章頁面代碼裏,都有一段 trackback 的鏈接,如果不屏蔽讓蜘蛛去捉取,網站會出現重複頁面內容問題。
| Disallow: /feed
Disallow: /*/feed Disallow: /comments/feed |
頭部代碼裏的 feed 鏈接主要是提示瀏覽器用户可以訂閲本站,而一般的站點都有 RSS 輸出和網站地圖,故屏蔽搜索引擎捉取這些鏈接,節約蜘蛛資源。
| Disallow: /?s=*
Disallow: /*/?s=* |
這個就不用解釋了,屏蔽捉取站內搜索結果。站內沒出現這些鏈接不代表站外沒有,如果收錄了會造成和 TAG 等頁面的內容相近。
屏蔽留言鏈接插件留下的變形留言鏈接。 (沒安裝相關插件當然不用這條指令)
| Disallow: /*.jpg$
Disallow: /*.jpeg$ Disallow: /*.gif$ Disallow: /*.png$ Disallow: /*.bmp$ |
屏蔽捉取任何圖片文件,在這裏主要是想節約點寬帶,不同的網站管理員可以按照喜好和需要設置這幾條指令。
屏蔽捉取短鏈接。默認頭部裏的短鏈接,百度等搜索引擎蜘蛛會試圖捉取,雖然最終短鏈接會 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 是否規範。