robots.txt文件如何使用,這些你真的了解嗎?搜索引擎通過一種程序robot(又稱spider),自動(dòng)訪問互聯(lián)網(wǎng)上的網(wǎng)頁并獲取網(wǎng)頁信息。 搜索引擎通過一種程序robot(又稱spider),自動(dòng)訪問互聯(lián)網(wǎng)上的網(wǎng)頁并獲取網(wǎng)頁信息。
您可以在您的網(wǎng)站中創(chuàng)建一個(gè)純文本文件robots.txt,在這個(gè)文件中聲明該網(wǎng)站中不想被robot訪問的部分,這樣,該網(wǎng)站的部分或全部?jī)?nèi)容就可以不被搜索引擎收錄了,或者指定搜索引擎只收錄指定的內(nèi)容。robots.txt文件應(yīng)該放在網(wǎng)站根目錄下。
當(dāng)一個(gè)搜索機(jī)器人(有的叫搜索蜘蛛)訪問一個(gè)站點(diǎn)時(shí),它會(huì)首先檢查該站點(diǎn)根目錄下是否存在robots.txt,如果存在,搜索機(jī)器人就會(huì)按照該文件中的內(nèi)容來確定訪問的范圍;如果該文件不存在,那么搜索機(jī)器人就沿著鏈接抓取。
“robots.txt”文件包含一條或更多的記錄,這些記錄通過空行分開(以CR,CR/NL, or NL作為結(jié)束符),每一條記錄的格式如下所示:
“:”。
在該文件中可以使用#進(jìn)行注解,具體使用方法和UNIX中的慣例一樣。該文件中的記錄通常以一行或多行User-agent開始,后面加上若干Disallow行,詳細(xì)情況如下:
該項(xiàng)的值用于描述搜索引擎robot的名字,在 ”robots.txt”文件中,如果有多條User-agent記錄說明有多個(gè)robot會(huì)受到該協(xié)議的限制,對(duì)該文件來說,至少要有一條User- agent記錄。如果該項(xiàng)的值設(shè)為*,則該協(xié)議對(duì)任何機(jī)器人均有效,在”robots.txt”文件中,”User-agent:*”這樣的記錄只能有一條。
該項(xiàng)的值用于描述不希望被訪問到的一個(gè)URL,這個(gè)URL可以是一條完整的路徑,也可以是部分的,任何以Disallow開頭的URL均不會(huì)被robot 訪問到。例如”Disallow:/help”對(duì)/help.html 和/help/index.html都不允許搜索引擎訪問,而”Disallow:/help/”則允許robot訪問/help.html,而不能訪問 /help/index.html。任何一條Disallow記錄為空,說明該網(wǎng)站的所有部分都允許被訪問,在”/robots.txt”文件中,至少要有一條Disallow記錄。如果”/robots.txt”是一個(gè)空文件,則對(duì)于所有的搜索引擎robot,該網(wǎng)站都是開放的。
例1. 禁止所有搜索引擎訪問網(wǎng)站的任何部分 下載該robots.txt文件 User-agent: * Disallow: /
例2. 允許所有的robot訪問 (或者也可以建一個(gè)空文件 “/robots.txt” file) User-agent: *Disallow:
例3. 禁止某個(gè)搜索引擎的訪問 User-agent: BadBotDisallow: /
例4. 允許某個(gè)搜索引擎的訪問 User-agent: baiduspiderDisallow: User-agent: *Disallow: /
例 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/
1. Google
允許 Googlebot:
如果您要攔截除 Googlebot 以外的所有漫游器訪問您的網(wǎng)頁,可以使用下列語法:
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)行查找?!盇llow”行的作用原理完全與 ”Disallow”行一樣。只需列出您要允許的目錄或頁面即可。
您也可以同時(shí)使用”Disallow”和”Allow”。例如,要攔截子目錄中某個(gè)頁面之外的其他所有頁面,可以使用下列條目:
User-Agent:Googlebot
Disallow:/folder1/
Allow:/folder1/myfile.html
這些條目將攔截 folder1 目錄內(nèi)除 myfile.html 之外的所有頁面。
如果您要攔截 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)頁。但是,以 ? 結(jié)尾的網(wǎng)址可能是您要包含的網(wǎng)頁版本。在此情況下,可對(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)址)。
Sitemap 網(wǎng)站地圖:
對(duì)網(wǎng)站地圖的新的支持方式,就是在robots.txt文件里直接包括sitemap文件的鏈接。
就像這樣:
Sitemap: http://www.eastsem.com/sitemap.xml
目前對(duì)此表示支持的搜索引擎公司有Google, Yahoo, Ask and MSN。
不過,我建議還是在Google Sitemap 進(jìn)行提交,里面有很多功能可以分析你的鏈接狀態(tài)。
以上就是robots.txt文件如何使用內(nèi)容了,更多精彩請(qǐng)關(guān)注海淘科技。