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 是否規範。