新聞NEWS
網(wǎng)站的Robots規(guī)則如何寫才正確?
網(wǎng)站的Robots規(guī)則如何寫才正確?
Robots協(xié)議用來告知搜索引擎哪些頁(yè)面能被抓取,哪些頁(yè)面不能被抓??;可以屏蔽一些網(wǎng)站中比較大的文件,如:圖片,音樂,視頻等,節(jié)省服務(wù)器帶寬;可以屏蔽站點(diǎn)的一些死鏈接。方便搜索引擎抓取網(wǎng)站內(nèi)容;設(shè)置網(wǎng)站地圖連接,方便引導(dǎo)蜘蛛爬取頁(yè)面。下面是Robots文件寫法及文件用法。
一、文件寫法
User-agent: * 這里的*代表的所有的搜索引擎種類,*是一個(gè)通配符
Disallow: /admin/ 這里定義是禁止爬尋admin目錄下面的目錄
Disallow: /require/ 這里定義是禁止爬尋require目錄下面的目錄
Disallow: /ABC/ 這里定義是禁止爬尋ABC目錄下面的目錄
Disallow: /cgi-bin/*.htm 禁止訪問/cgi-bin/目錄下的所有以".htm"為后綴的URL(包含子目錄)。
Disallow: /*?* 禁止訪問網(wǎng)站中所有包含問號(hào) (?) 的網(wǎng)址
Disallow: /.jpg$ 禁止抓取網(wǎng)頁(yè)所有的。jpg格式的圖片
Disallow:/ab/adc.html 禁止爬取ab文件夾下面的adc.html文件。
Allow: /cgi-bin/ 這里定義是允許爬尋cgi-bin目錄下面的目錄
Allow: /tmp 這里定義是允許爬尋tmp的整個(gè)目錄
Allow: .htm$ 僅允許訪問以".htm"為后綴的URL。
Allow: .gif$ 允許抓取網(wǎng)頁(yè)和gif格式圖片
Sitemap: 網(wǎng)站地圖 告訴爬蟲這個(gè)頁(yè)面是網(wǎng)站地圖
二、文件用法
例1. 禁止所有搜索引擎訪問網(wǎng)站的任何部分
User-agent: *
Disallow: /
實(shí)例分析:淘寶網(wǎng)的 Robots.txt文件
User-agent: Baiduspider
Disallow: /
User-agent: baiduspider
Disallow: /
很顯然淘寶不允許百度的機(jī)器人訪問其網(wǎng)站下其所有的目錄。
例2. 允許所有的robot訪問 (或者也可以建一個(gè)空文件 “/robots.txt” file)
User-agent: *
Allow: /
例3. 禁止某個(gè)搜索引擎的訪問
User-agent: BadBot
Disallow: /
例4. 允許某個(gè)搜索引擎的訪問
User-agent: Baiduspider
allow:/
例5.一個(gè)簡(jiǎn)單例子
在這個(gè)例子中,該網(wǎng)站有三個(gè)目錄對(duì)搜索引擎的訪問做了限制,即搜索引擎不會(huì)訪問這三個(gè)目錄。
需要注意的是對(duì)每一個(gè)目錄必須分開聲明,而不要寫成 “Disallow: /cgi-bin/ /tmp/”。
User-agent:后的*具有特殊的含義,代表“any robot”,所以在該文件中不能有“Disallow: /tmp/*” or “Disallow:*.gif”這樣的記錄出現(xiàn)。
User-agent: *
Disallow: /cgi-bin/
Disallow: /tmp/
Disallow: /~joe/
Robot特殊參數(shù):
允許 Googlebot:
如果您要攔截除Googlebot以外的所有漫游器不能訪問您的網(wǎng)頁(yè),可以使用下列語法:
User-agent:
Disallow: /
User-agent: Googlebot
Disallow:
Googlebot 跟隨指向它自己的行,而不是指向所有漫游器的行。
“Allow”擴(kuò)展名:
Googlebot 可識(shí)別稱為“Allow”的 robots.txt 標(biāo)準(zhǔn)擴(kuò)展名。其他搜索引擎的漫游器可能無法識(shí)別此擴(kuò)展名,因此請(qǐng)使用您感興趣的其他搜索引擎進(jìn)行查找。“Allow”行的作用原理完全與“Disallow”行一樣。只需列出您要允許的目錄或頁(yè)面即可。
您也可以同時(shí)使用“Disallow”和“Allow”。例如,要攔截子目錄中某個(gè)頁(yè)面之外的其他所有頁(yè)面,可以使用下列條目:
User-agent: Googlebot
Allow: /folder1/myfile.html
Disallow: /folder1/
這些條目將攔截 folder1 目錄內(nèi)除 myfile.html 之外的所有頁(yè)面。
如果您要攔截 Googlebot 并允許 Google 的另一個(gè)漫游器(如 Googlebot-Mobile),可使用”Allow”規(guī)則允許該漫游器的訪問。例如:
User-agent: Googlebot
Disallow: /
User-agent: Googlebot-Mobile
Allow:
使用 * 號(hào)匹配字符序列:
您可使用星號(hào) (*) 來匹配字符序列。例如,要攔截對(duì)所有以 private 開頭的子目錄的訪問,可使用下列條目: User-Agent: Googlebot
Disallow: /private*/
要攔截對(duì)所有包含問號(hào) (?) 的網(wǎng)址的訪問,可使用下列條目:
User-agent: *
Disallow: /*?*
使用 $ 匹配網(wǎng)址的結(jié)束字符
您可使用 $字符指定與網(wǎng)址的結(jié)束字符進(jìn)行匹配。例如,要攔截以 .asp 結(jié)尾的網(wǎng)址,可使用下列條目: User-agent: Googlebot
Disallow: /*.asp$
您可將此模式匹配與 Allow 指令配合使用。例如,如果 ? 表示一個(gè)會(huì)話 ID,您可排除所有包含該 ID 的網(wǎng)址,確保 Googlebot 不會(huì)抓取重復(fù)的網(wǎng)頁(yè)。但是,以 ? 結(jié)尾的網(wǎng)址可能是您要包含的網(wǎng)頁(yè)版本。在此情況下,可對(duì) robots.txt 文件進(jìn)行如下設(shè)置:
User-agent: *
Allow: /*?$
Disallow: /*?
Disallow: / *?
一行將攔截包含 ? 的網(wǎng)址(具體而言,它將攔截所有以您的域名開頭、后接任意字符串,然后是問號(hào) (?),而后又是任意字符串的網(wǎng)址)。
Allow: /*?$ 一行將允許包含任何以 ? 結(jié)尾的網(wǎng)址(具體而言,它將允許包含所有以您的域名開頭、后接任意字符串,然后是問號(hào) (?),問號(hào)之后沒有任何字符的網(wǎng)址)。
Robots協(xié)議舉例
禁止所有機(jī)器人訪問User-agent:*Disallow:/
允許所有機(jī)器人訪問User-agent:*Disallow:
禁止特定機(jī)器人訪問User-agent:BadBotDisallow:/
允許特定機(jī)器人訪問User-agent:GoodBotDisallow:
禁止訪問特定目錄User-agent:*Disallow:/images/
僅允許訪問特定目錄User-agent:*Allow:/images/Disallow:/
禁止訪問特定文件User-agent:*Disallow:/*.html$
僅允許訪問特定文件User-agent:*Allow:/*.html$Disallow:/
盡管robots.txt已經(jīng)存在很多年了,但是各大搜索引擎對(duì)它的解讀都有細(xì)微差別。Google與百度都分別在自己的站長(zhǎng)工具中提供了robots工具。如果您編寫了robots.txt文件,建議您在這兩個(gè)工具中都進(jìn)行測(cè)試,因?yàn)檫@兩者的解析實(shí)現(xiàn)確實(shí)有細(xì)微差別。
更多青晟網(wǎng)絡(luò)資訊請(qǐng)登錄官方網(wǎng)站:http://www.qmvip.net或者h(yuǎn)ttp://www.icbiesd.com