為了避免搜索引擎對博客內容進行重複索引,可以用robots.txt限制搜索引擎機器人對某些頁面的抓取。例如分類頁面(category)、標籤頁面(tag)之類的是隨最新文章變化的,對它們做索引就沒有什麼意義。
可以在web的根目錄下放置一個如下內容的robot.txt文件(文件名全部為小寫):
User-agent: * Disallow: /wp-admin/ Disallow: /wp-content/ Disallow: /wp-includes/ Disallow: /*/comment-page-* Disallow: /feed Disallow: /*/feed Disallow: /comments/feed Disallow: /*?replytocom=* Disallow: /category/*/page/ Disallow: /tag/*/page/ Disallow: /*/trackback Disallow: /?s=* Disallow: /*/?s=* Disallow: /attachment/ Disallow: /author/ Disallow: /tag Disallow: /*/tag Disallow: /category/ Disallow: /page/ User-agent: Mediapartners-Google Allow: /
其中的“Disallow:/*?*”那句是讓搜索引擎不去索引所有帶“?”的網址。如果WordPress沒有採用永久固定鏈接而用默認的“ /?p=xx”的方式的話就要刪掉這句。
請注意末尾的兩句,其含義是允許Google Adsense的機器人去抓取所有頁面,這樣才可以在所有頁面上都放adsense廣告。否則在禁止了索引的頁面上只會顯示公益廣告而無法獲得 adsense收入。Mediapartners-Google後面不能加*,利用google的網站管理員工具中的“測試robots.txt”來進行測試,就會發現如果末尾加了“*”的話結果是不正確的。
Google網站站長工具:https://www.google.com/webmasters/
百度站長平台Robots工具:http://zhanzhang.baidu.com/robots/
什麼是robot.txt文件及其語法:
robots.txt是搜索引擎中訪問網站的時候要查看的第一個文件。Robots.txt文件告訴蜘蛛程序在服務器上什麼文件是可以被查看的。
當一個搜索蜘蛛訪問一個站點時,它會首先檢查該站點根目錄下是否存在robots.txt,如果存在,搜索機器人就會按照該文件中的內容來確定訪問的範圍;如果該文件不存在,所有的搜索蜘蛛將能夠訪問網站上所有沒有被口令保護的頁面。
robots.txt必須放置在一個站點的根目錄下,而且文件名必須全部小寫。
語法:最簡單的 robots.txt 文件使用兩條規則:
• User-Agent: 適用下列規則的漫遊器
• Disallow: 要攔截的網頁
在該文件中可以使用#進行註解,具體使用方法和UNIX中的慣例一樣。該文件中的記錄通常以一行或多行User-agent開始,後面加上若干Disallow和Allow行,詳細情況如下:
User-agent:
該項的值用於描述搜索引擎robot的名字。在”robots.txt”文件中,如果有多條 User-agent記錄說明有多個robot會受到”robots.txt”的限制,對該文件來說,至少要有一條User-agent記錄。如果該項的值設為*,則對任何robot均有效,在”robots.txt”文件中,”User-agent:*”這樣的記錄只能有一條。如果在”robots.txt”文件中,加入”User-agent:SomeBot”和若干Disallow、Allow行,那麼名為”SomeBot”只受到”User-agent:SomeBot”後面的Disallow和Allow行的限制。
Disallow:
該項的值用於描述不希望被訪問的一組URL,這個值可以是一條完整的路徑,也可以是路徑的非空前綴,以Disallow項的值開頭的URL不會被robot訪問。例如”Disallow:/help”禁止robot訪問/help.html、 /helpabc.html、/help/index.html,而”Disallow:/help/”則允許robot訪問/help.html、 /helpabc.html,不能訪問/help/index.html。”Disallow:”說明允許robot訪問該網站的所有url,在” /robots.txt”文件中,至少要有一條Disallow記錄。如果”/robots.txt”不存在或者為空文件,則對於所有的搜索引擎 robot,該網站都是開放的。
Allow:
該項的值用於描述希望被訪問的一組URL,與Disallow項相似,這個值可以是一條完整的路徑,也可以是路徑的前綴,以Allow項的值開頭的URL是允許robot訪問的。例如”Allow:/hibaidu”允許robot訪問 /hibaidu.htm、/hibaiducom.html、/hibaidu/com.html。一個網站的所有URL默認是Allow的,所以 Allow通常與Disallow搭配使用,實現允許訪問一部分網頁同時禁止訪問其它所有URL的功能。
需要特別注意的是Disallow與Allow行的順序是有意義的,robot會根據第一個匹配成功的Allow或Disallow行確定是否訪問某個URL。
使用”*”和”$”:
Baiduspider支持使用通配符”*”和”$”來模糊匹配url。
”$” 匹配行結束符。
”*” 匹配0或多個任意字符。
Disallow: /feed
Disallow: /*/feed
這樣就OK了
博主 您好 怎麼設置robot 讓搜索引擎不索引ree feed啊 我的rss feed 地址抓取錯誤,找不到,不利於SEO我乾脆 把它去掉。
我個人意見是不用.
wordpress的wp-放進robots.txt好嗎?