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