一、robots.txt是什么?robots.txt是一個純文本文件,在這個文件中網(wǎng)站管理者可以聲明該網(wǎng)站中不想被搜索引擎訪問的部分,或者指定搜索引擎只收錄指定的內(nèi)容。 當一個搜索引擎(又稱搜索機器人或蜘蛛程序)訪問一個站點時,它會首先檢查該站點根目錄下是否存在robots.txt,如果存在,搜索機器人就會按照該文件中的內(nèi)容來確定訪問的范圍;如果該文件不存在,那么搜索機器人就沿著鏈接抓取。 二、robots.txt的作用1、引導搜索引擎蜘蛛抓取指定欄目或內(nèi)容; 2、網(wǎng)站改版或者URL重寫優(yōu)化時候屏蔽對搜索引擎不友好的鏈接; 3、屏蔽死鏈接、404錯誤頁面; 4、屏蔽無內(nèi)容、無價值頁面; 5、屏蔽重復頁面,如評論頁、搜索結(jié)果頁; 6、屏蔽任何不想被收錄的頁面; 7、引導蜘蛛抓取網(wǎng)站地圖; 三、Robots的語法(三個語法和兩個通配符)三個語法如下: 1、User-agent:(定義搜索引擎) 示例: User-agent: *(定義所有搜索引擎) 不同的搜索引擎的搜索機器人有不同的名稱,谷歌:Googlebot、百度:Baiduspider、MSN:MSNbot、Yahoo:Slurp。 2、Disallow:(用來定義禁止蜘蛛爬取的頁面或目錄) 示例: Disallow: /(禁止蜘蛛爬取網(wǎng)站的所有目錄 "/" 表示根目錄下) 3、Allow:(用來定義允許蜘蛛爬取的頁面或子目錄) 示例: Allow: /admin/test/(允許蜘蛛爬取admin下的test目錄) 兩個通配符如下: 4、匹配符 “$” $ 通配符:匹配URL結(jié)尾的字符 5、通配符 “*” * 通配符:匹配0個或多個任意字符 四、robots.txt 綜合示例1、禁止搜索引擎抓取特定目錄 在這個例子中,該網(wǎng)站有三個目錄對搜索引擎的訪問做了限制,即搜索引擎不會訪問這三個目錄。 User-agent: * 2、禁止admin目錄,但允許抓取admin目錄下的seo子目錄 User-agent: * 3、禁止抓取/abc/目錄下的所有以".htm”為后綴的URL(包含子目錄) User-agent: * 4、禁止抓取網(wǎng)站中所有的動態(tài)頁面 User-agent: * 屏蔽所有帶“?”的文件,這樣就屏蔽所有的動態(tài)路徑。 5、禁止百度蜘蛛抓取網(wǎng)站所有的圖片: User-agent: Baiduspider 6、要在阻止網(wǎng)站頁面被抓取的同時仍然在這些頁面上顯示 AdSense 廣告 User-agent: * User-agent: Mediapartners-Google 請禁止除 Mediapartners-Google 以外的所有漫游器。 這樣可使頁面不出現(xiàn)在搜索結(jié)果中,同時又能讓 Mediapartners-Google 漫游器分析頁面,從而確定要展示的廣告。 Mediapartners-Google 漫游器并不與其他 Google User-agent 共享網(wǎng)頁。 五、注意事項1、robots.txt 文件必須放在網(wǎng)站的根目錄,不可以放在子目錄。 以WEB開發(fā)者網(wǎng)站為例:比如通過 http://www./robots.txt 你就可以訪問 的robots.txt文件了。 2、robots.txt 文件名命名必須小寫,記得在robot面加“s”。 3、User-agent、Allow、Disallow的 “:” 后面有一個字符的空格。 4、路徑后面加斜杠“/” 和不加斜杠的是有區(qū)別的 Disallow: /help Disallow: /help/ 5、Disallow與Allow行的順序是有意義的: 舉例說明: 允許蜘蛛訪問 /admin/ 目錄下的seo文件夾 User-agent: * 如果Allow 和 Disallow 的順序調(diào)換一下: User-agent: * 蜘蛛就無法訪問到 /admin/ 目錄下的 seo 文件夾,因為第一個 Disallow: /admin/ 已匹配成功。 六、關(guān)于Robots MetaRobots.txt文件主要是限制整個站點或者目錄的搜索引擎訪問情況,而Robots Meta標簽則主要是針對一個個具體的頁面。和其他的META標簽(如使用的語言、頁面的描述、關(guān)鍵詞等)一樣,Robots Meta標簽也是放在頁面中,專門用來告訴搜索引擎ROBOTS如何抓取該頁的內(nèi)容。 Robots Meta 標簽中沒有大小寫之分,name="Robots" 表示所有的搜索引擎,可以針對某個具體搜索引擎(如google)寫為 name="Googlebot", content部分有四個指令選項:index、noindex、follow、nofollow,指令間以 “,” 分隔。 Index 指令告訴搜索機器人抓取該頁面; NoIndex命令:告訴搜索引擎不允許抓取這個頁面 Follow 指令表示搜索機器人可以沿著該頁面上的鏈接繼續(xù)抓取下去; NoFollow命令:告訴搜索引擎不允許從此頁找到鏈接、拒絕其繼續(xù)訪問。 Robots Meta 標簽的缺省值是Index和Follow; 根據(jù)以上的命令,我們就有了一下的四種組合: <meta name="robots"
content="index,follow"/> <meta name="robots"
content="noindex,follow"/> <neta name="robots"
content="index,nofollow"/> <meta name="robots"
content="noindex,nofollow"/> 如果是 <meta name="robots" content="noindex,nofollow"/>
形式的話,可以寫成: 如果是 <meta name="robots" content="index,follow"/>
形式的話,可以寫成: 七、關(guān)于 rel="nofollow"將"nofollow"放在超鏈接中,告訴搜索引擎不要抓取特定的鏈接。 如某博客上有垃圾評論: <a href="URL">灌水</a> 以下操作,即進行了 nofollow: <a href="URL" rel="nofollow" >灌水</a> |
|