一個(gè)網(wǎng)站的robots文件對(duì)于做seo是至關(guān)重要的,它可以限制搜索引擎蜘蛛抓取不該收錄的目錄或者頁(yè)面,避免資源的浪費(fèi),它的規(guī)則主要有以下幾點(diǎn):
1) User-Agent鍵
后面的內(nèi)容對(duì)應(yīng)的是各個(gè)具體的搜索引擎爬行器的名稱。如百度是Baiduspider,谷歌是Googlebot。
一般我們這樣寫:
User-Agent: *
表示允許所有搜索引擎蜘蛛來(lái)爬行抓取。如果只想讓某一個(gè)搜索引擎蜘蛛來(lái)爬行,在后面列出名字即可。如果是多個(gè),則重復(fù)寫。
注意:User-Agent:后面要有一個(gè)空格。
在robots.txt中,鍵后面加:號(hào),后面必有一個(gè)空格,和值相區(qū)分開。
2)Disallow鍵
該鍵用來(lái)說(shuō)明不允許搜索引擎蜘蛛抓取的URL路徑。
例如:Disallow: /index.php 禁止網(wǎng)站index.php文件
Allow鍵
該鍵說(shuō)明允許搜索引擎蜘蛛爬行的URL路徑
例如:Allow: /index.php 允許網(wǎng)站的index.php
通配符*
代表任意多個(gè)字符
例如:Disallow: /*.jpg 網(wǎng)站所有的jpg文件被禁止了。
結(jié)束符$
表示以前面字符結(jié)束的url。
例如:Disallow: /?$ 網(wǎng)站所有以?結(jié)尾的文件被禁止。
應(yīng)該注意的是:
1,在"/robots.txt"文件中,至少要有一條Disallow記錄,允許收錄優(yōu)先級(jí)要高于禁止收錄,如
User-agent: *
Allow: /a/b.htm
Disallow: /a/
則a目錄下b.htm可以訪問(wèn),其他禁止
2,注意路徑后面加斜杠和不加斜杠的區(qū)別
如果目錄后邊帶斜杠,那么訪問(wèn)不帶斜杠的地址時(shí)還是可以訪問(wèn)目錄首頁(yè),如果想屏蔽掉整個(gè)目錄,建議不帶斜杠
Allow或Disallow的值 | URL | 匹配結(jié)果 |
/tmp | /tmp | yes |
/tmp | /tmp.html | yes |
/tmp | /tmp/a.html | yes |
/tmp/ | /tmp | no |
/tmp/ | /tmphoho | no |
/tmp/ | /tmp/a.html | yes |
/Hello* | /Hello.html | yes |
/He*lo | /Hello,lolo | yes |
/Heap*lo | /Hello,lolo | no |
html$ | /tmpa.html | yes |
/a.html$ | /a.html | yes |
htm$ | /a.html | no |
3,robots文件只有放在根目錄才有效,放在子目錄沒效。
4,robots.txt文件用法舉例
例1. 禁止所有搜索引擎訪問(wèn)網(wǎng)站的任何部分 | User-agent: * Disallow: / |
例2. 允許所有的robot訪問(wèn) (或者也可以建一個(gè)空文件 “/robots.txt”) |
User-agent: * Disallow: 或者 User-agent: * Allow: / |
例3. 僅禁止Baiduspider訪問(wèn)您的網(wǎng)站 | User-agent: Baiduspider Disallow: / |
例4. 僅允許Baiduspider訪問(wèn)您的網(wǎng)站 | User-agent: Baiduspider Disallow: User-agent: * |
例5. 禁止spider訪問(wèn)特定目錄 在這個(gè)例子中,該網(wǎng)站有三個(gè)目錄對(duì)搜索引擎的訪問(wèn)做了限制,即robot不會(huì)訪問(wèn)這三個(gè)目錄。需要注意的是對(duì)每一個(gè)目錄必須分開聲明,而不能寫成 “Disallow: /cgi-bin/ /tmp/”。 |
User-agent: * Disallow: /cgi-bin/ Disallow: /tmp/ Disallow: /~joe/ |
例6. 允許訪問(wèn)特定目錄中的部分url | User-agent: * Allow: /cgi-bin/see Allow: /tmp/hi Allow: /~joe/look Disallow: /cgi-bin/ Disallow: /tmp/ Disallow: /~joe/ |
例7. 使用”*”限制訪問(wèn)url 禁止訪問(wèn)/cgi-bin/目錄下的所有以”.htm”為后綴的URL(包含子目錄)。 |
User-agent: * Disallow: /cgi-bin/*.htm |
例8. 使用”$”限制訪問(wèn)url 僅允許訪問(wèn)以”.htm”為后綴的URL。 |
User-agent: * Allow: .htm$ Disallow: / |
例9. 禁止訪問(wèn)網(wǎng)站中所有的動(dòng)態(tài)頁(yè)面 | User-agent: * Disallow: /*?* |
例10. 禁止Baiduspider抓取網(wǎng)站上所有圖片 僅允許抓取網(wǎng)頁(yè),禁止抓取任何圖片。 |
User-agent: Baiduspider Disallow: .jpg$ Disallow: .jpeg$ Disallow: .gif$ Disallow: .png$ Disallow: .bmp$ |
例11. 僅允許Baiduspider抓取網(wǎng)頁(yè)和.gif格式圖片 允許抓取網(wǎng)頁(yè)和gif格式圖片,不允許抓取其他格式圖片 |
User-agent: Baiduspider Allow: .gif$ Disallow: .jpg$ Disallow: .jpeg$ Disallow: .png$ Disallow: .bmp$ |
例12. 僅禁止Baiduspider抓取.jpg格式圖片 | User-agent: Baiduspider Disallow: .jpg$ |