Robots文件用法及注意事項

  • 發布時間:2019-01-05 18:26:47
  • 作者:資深網
  • 瀏覽:3314
  • Robots文件是什么?

    robots.txt文件是一個文本文件,使用任何一個常見的文本編輯器,比如Windows系統自帶的Notepad,就可以創建和編輯它。robots.txt是一個協議,而不是一個命令。robots.txt是搜索引擎中訪問網站的時候要查看的第一個文件。robots.txt文件告訴蜘蛛程序在服務器上什么文件是可以被查看的。

    當一個搜索蜘蛛訪問一個站點時,它會首先檢查該站點根目錄下是否存在robots.txt,如果存在,搜索機器人就會按照該文件中的內容來確定訪問的范圍;如果該文件不存在,所有的搜索蜘蛛將能夠訪問網站上所有沒有被口令保護的頁面。百度官方建議,僅當您的網站包含不希望被搜索引擎收錄的內容時,才需要使用robots.txt文件。如果您希望搜索引擎收錄網站上所有內容,請勿建立robots.txt文件。

    如果將網站視為酒店里的一個房間,robots.txt就是主人在房間門口懸掛的“請勿打擾”或“歡迎打掃”的提示牌。這個文件告訴來訪的搜索引擎哪些房間可以進入和參觀,哪些房間因為存放貴重物品,或可能涉及住戶及訪客的隱私而不對搜索引擎開放。但robots.txt不是命令,也不是防火墻,如同守門人無法阻止竊賊等惡意闖入者。

    Robots協議原則

    Robots協議是國際互聯網界通行的道德規范,基于以下原則建立:

    1、搜索技術應服務于人類,同時尊重信息提供者的意愿,并維護其隱私權;

    2、網站有義務保護其使用者的個人信息和隱私不被侵犯。

    Robots文件功能

    Robots協議用來告知搜索引擎哪些頁面能被抓取,哪些頁面不能被抓取;可以屏蔽一些網站中比較大的文件,如:圖片,音樂,視頻等,節省服務器帶寬;可以屏蔽站點的一些死鏈接。方便搜索引擎抓取網站內容;設置網站地圖連接,方便引導蜘蛛爬取頁面。

    Robots文件寫法

    User-agent: * 這里的*代表的所有的搜索引擎種類,*是一個通配符

    Disallow: /admin/ 這里定義是禁止爬尋admin目錄下面的目錄

    Disallow: /require/ 這里定義是禁止爬尋require目錄下面的目錄

    Disallow: /ABC/ 這里定義是禁止爬尋ABC目錄下面的目錄

    Disallow: /cgi-bin/*.htm 禁止訪問/cgi-bin/目錄下的所有以".htm"為后綴的URL(包含子目錄)。

    Disallow: /*?* 禁止訪問網站中所有包含問號 (?) 的網址

    Disallow: /.jpg$ 禁止抓取網頁所有的.jpg格式的圖片

    Disallow:/ab/adc.html 禁止爬取ab文件夾下面的adc.html文件。

    Allow: /cgi-bin/ 這里定義是允許爬尋cgi-bin目錄下面的目錄

    Allow: /tmp 這里定義是允許爬尋tmp的整個目錄

    Allow: .htm$ 僅允許訪問以".htm"為后綴的URL。

    Allow: .gif$ 允許抓取網頁和gif格式圖片

    Sitemap: 網站地圖 告訴爬蟲這個頁面是網站地圖

    Robots文件用法

    1. 禁止所有搜索引擎訪問網站的任何部分

    User-agent: *

    Disallow: /

    實例分析:淘寶網的 Robots.txt文件

    User-agent: Baiduspider

    Disallow: /

    User-agent: baiduspider

    Disallow: /

    很顯然淘寶不允許百度的機器人訪問其網站下其所有的目錄。

    2. 允許所有的robot訪問 (或者也可以建一個空文件 “/robots.txt” file)

    User-agent: *

    Allow: /

    3. 禁止某個搜索引擎的訪問

    User-agent: BadBot

    Disallow: /

    4. 允許某個搜索引擎的訪問

    User-agent: Baiduspider

    allow:/

    5.一個簡單例子

    在這個例子中,該網站有三個目錄對搜索引擎的訪問做了限制,即搜索引擎不會訪問這三個目錄。

    需要注意的是對每一個目錄必須分開聲明,而不要寫成 “Disallow: /cgi-bin/ /tmp/”。

    User-agent:后的*具有特殊的含義,代表“any robot”,所以在該文件中不能有“Disallow: /tmp/*” or “Disallow:*.gif”這樣的記錄出現。

    User-agent: *

    Disallow: /cgi-bin/

    Disallow: /tmp/

    Disallow: /~joe/

    Robot特殊參數:

    允許 Googlebot:

    如果您要攔截除Googlebot以外的所有漫游器不能訪問您的網頁,可以使用下列語法:

    User-agent:

    Disallow: /

    User-agent: Googlebot

    Disallow:

    Googlebot 跟隨指向它自己的行,而不是指向所有漫游器的行。

    “Allow”擴展名:

    Googlebot 可識別稱為“Allow”的 robots.txt 標準擴展名。其他搜索引擎的漫游器可能無法識別此擴展名,因此請使用您感興趣的其他搜索引擎進行查找。“Allow”行的作用原理完全與“Disallow”行一樣。只需列出您要允許的目錄或頁面即可。

    您也可以同時使用“Disallow”和“Allow”。例如,要攔截子目錄中某個頁面之外的其他所有頁面,可以使用下列條目:

    User-agent: Googlebot

    Allow: /folder1/myfile.html

    Disallow: /folder1/

    這些條目將攔截 folder1 目錄內除 myfile.html 之外的所有頁面。

    如果您要攔截 Googlebot 并允許 Google 的另一個漫游器(如 Googlebot-Mobile),可使用”Allow”規則允許該漫游器的訪問。例如:

    User-agent: Googlebot

    Disallow: /

    User-agent: Googlebot-Mobile

    Allow:

    使用 * 號匹配字符序列:

    您可使用星號 (*) 來匹配字符序列。例如,要攔截對所有以 private 開頭的子目錄的訪問,可使用下列條目: User-Agent: Googlebot

    Disallow: /private*/

    要攔截對所有包含問號 (?) 的網址的訪問,可使用下列條目:

    User-agent: *

    Disallow: /*?*

    使用 $ 匹配網址的結束字符

    您可使用 $字符指定與網址的結束字符進行匹配。例如,要攔截以 .asp 結尾的網址,可使用下列條目: User-agent: Googlebot

    Disallow: /*.asp$

    您可將此模式匹配與 Allow 指令配合使用。例如,如果 ? 表示一個會話 ID,您可排除所有包含該 ID 的網址,確保 Googlebot 不會抓取重復的網頁。但是,以 ? 結尾的網址可能是您要包含的網頁版本。在此情況下,可對 robots.txt 文件進行如下設置:

    User-agent: *

    Allow: /*?$

    Disallow: /*?

    Disallow: / *?

    一行將攔截包含 ? 的網址(具體而言,它將攔截所有以您的域名開頭、后接任意字符串,然后是問號 (?),而后又是任意字符串的網址)。

    Allow: /*?$ 一行將允許包含任何以 ? 結尾的網址(具體而言,它將允許包含所有以您的域名開頭、后接任意字符串,然后是問號 (?),問號之后沒有任何字符的網址)。

    盡管robots.txt已經存在很多年了,但是各大搜索引擎對它的解讀都有細微差別。Google與百度都分別在自己的站長工具中提供了robots工具。如果您編寫了robots.txt文件,建議您在這兩個工具中都進行測試,因為這兩者的解析實現確實有細微差別。

    robots其它屬性

    1. Robot-version: 用來指定robot協議的版本號

    例子: Robot-version: Version 2.0

    2.Crawl-delay:雅虎YST一個特定的擴展名,可以通過它對我們的抓取程序設定一個較低的抓取請求頻率。您可以加入Crawl-delay:xx指示,其中,“XX”是指在crawler程序兩次進入站點時,以秒為單位的最低延時。

    3. Visit-time:只有在visit-time指定的時間段里,robot才可以訪問指定的URL,否則不可訪問.

    例子: Visit-time: 0100-1300 #允許在凌晨1:00到13:00訪問

    4. Request-rate: 用來限制URL的讀取頻率

    例子: Request-rate: 40/1m 0100 - 0759 在1:00到07:59之間,以每分鐘40次的頻率進行訪問

    Request-rate: 12/1m 0800 - 1300 在8:00到13:00之間,以每分鐘12次的頻率進行訪問

    標簽

    Robots.txt文件主要是限制整個站點或者目錄的搜索引擎訪問情況,而Robots Meta標簽則主要是針對一個個具體的頁面。和其他的META標簽(如使用的語言、頁面的描述、關鍵詞等)一樣,Robots Meta標簽也是放在頁面中,專門用來告訴搜索引擎ROBOTS如何抓取該頁的內容。

    Robots Meta標簽中沒有大小寫之分,name=”Robots”表示所有的搜索引擎,可以針對某個具體搜索引擎寫為name=”BaiduSpider”。content部分有四個指令選項:index、noindex、follow、nofollow,指令間以“,”分隔。

    index指令告訴搜索機器人抓取該頁面;

    follow指令表示搜索機器人可以沿著該頁面上的鏈接繼續抓取下去;

    Robots Meta標簽的缺省值是index和follow,只有inktomi除外,對于它,缺省值是index、nofollow。

    robots注意事項

    上述的robots.txt和Robots Meta標簽限制搜索引擎機器人(ROBOTS)抓取站點內容的辦法只是一種規則,需要搜索引擎機器人的配合才行,并不是每個ROBOTS都遵守的。目前看來,絕大多數的搜索引擎機器人都遵守robots.txt的規則,而對于Robots META標簽,支持的并不多,但是正在逐漸增加,如著名搜索引擎GOOGLE就完全支持,而且GOOGLE還增加了一個指令“archive”,可以限制GOOGLE是否保留網頁快照。

    文件位置

    robots.txt文件應該放置在網站根目錄下。舉例來說,當spider訪問一個網站時,首先會檢查該網站中是否存在robots.txt這個文件,如果 Spider找到這個文件,它就會根據這個文件的內容,來確定它訪問權限的范圍。

    wordpress的robots位置

    沒有在wordpress網站根節目上傳過robots.txt,當搜尋引擎和用戶拜訪某個文件時,wordpress程序會主動生成一個robots.txt給搜尋引擎和用戶;若是我們上傳編寫的robots.txt到網站根節目,用戶和搜尋引擎蛛蛛拜訪的就是我們上傳的文件,wordpress就不會再產生那個文件了。只有服務器找不到robots的時候wordpress才會生成這個文件。


  • TAG:
  • 熱門標簽
    營銷型網站建設 怎么做網站 營銷型網站與展示型網站的區別 網站優化原理 網站收錄 網站文章優化 本地化網站優化 網站建設合同 網站優化合同 網站優化排名 網站創意怎么做 網站有點擊無咨詢 有排名無點擊 網站定位 網站怎么做推廣 自己怎么做網站 網站怎么做 網站建設多少錢 網站建設價格 網站建設素材
    山東淄博市高新區齊魯電商谷C3-802
    843897106
    www.forever-japan.cn
    18615152101 0533-3910025
    Copyright 717 淄博資深網站建設公司 All rights reseved 魯ICP備17013190號-1