robots.txt一般是指robots.txt協議。Robots協議(也稱為搜索引擎蜘蛛協議)的全稱是“網絡爬蟲排除標準”(Robots Exclusion Protocol),網站通過Robots協議告訴搜索引擎蜘蛛哪些頁面可以抓取,哪些頁面不能抓取。
robots.txt是一個robots為名字.txt為后綴的一個文本文件。在文件里,你可以寫一些允許百度等搜索引擎蜘蛛抓取收錄的頁面,而有些頁面你不想讓百度等搜索引擎抓取和收錄,也可以用robots語法禁止掉。之前馬云將淘寶全站禁止百度抓取的事件曾經轟動一時。但隨著時間的推移,淘寶已經將很多頁面允許讓百度搜索蜘蛛抓取了。
robots.txt語法:
1.基本語法:
User-agent 定義協議的搜索引擎。
Disallow 不允許抓取
Allow 允許抓取
* 通配符,代表所有
$ 結束符
2.詳情講解:
User-agent: * 所有的搜索引擎都要遵守
PS:1.英文的首字母一定要大寫。下同。2.問號一定是英文狀態下的。下同。3.問號之后一定要有一個空格。下同。
User-agent: Baiduspider 針對百度的協議
Disallow: / 屏蔽全站
Disallow: /can/ 屏蔽can文件下的所有文件
Allow: /can/123 屏蔽can文件下的所有文件,但是允許收錄123
Disallow: /*.jpg$ 屏蔽所有的圖片文件。
PS:使用通配符,一定要有結束符。不然可能導致正常的路徑被屏蔽。
網站為什么要使用robots.txt
1.統一路徑
在我們的網站中,指向頁面的路徑一定是有且只有一個。一旦多途徑指向一個頁面,會導致百度不知道收錄那個頁面。所以我們只要屏蔽了一個,讓百度收錄我們想讓收錄的。
2.搜索路徑
如果我們網站中有搜索框,那么我們就要把搜索結果頁面給屏蔽掉。目的就是為了防止有人使用這個搜索框搗亂。
3.標簽路徑
如果我們網站有標簽頁面,這個標簽頁面就是中文的鏈接,中文鏈接百度不認識,所以要屏蔽。
4.js文件
對于js文件或者其他無意義的文件,我們都可以屏蔽掉。
robots.txt寫法
1. 熟手自己動手寫,按上面的介紹的robots語法來。
2. 新手可以利用robots.txt生成工具,一鍵生成,非常簡單。
http://tool.chinaz.com/robots/
robots.txt怎么檢測是否成功?
可以用百度搜索資源平臺的站長工具來測試。
站長工具->網站支持->Robots
設置了robots.txt文件百度一定會遵守嗎?
當百度等搜索引擎來到我們網站的時候,會先看一看有沒有這個文件,在進行下一步的抓取。但是需要注意的是,這個協議只是我們單方面的,搜索引擎遵守與否,我們管不了。但是正常情況下搜索引擎會遵守這個協議。
Robots.txt生效時間是幾天?
百度內容人員曾經說過:
不同的站點略有不同,但通常在幾天內陸續生效。 其實我們可以假想下robots生效的過程:
1. 蜘蛛發現robots文件修改并將信息傳回
2.分析修改前后的robots文件
3.刪除不允許被收錄的索引數據 這個過程中肯能還會存在其他的一些步驟,然而由于每個網站蜘蛛爬的頻率和網站的權重不同(網站的重要性)而導致蜘蛛發現robots更改的時間延時或者被處理的優先性不同,最終導致的結果就是robots的生效時間不同。 通過以上分析我們可以得出robots的生效時間并不是一定的。
網站哪些文件是要被robots.txt屏蔽的?
下面舉例列出來:
1、模板文件(/template/)可以屏蔽;
2、這個文件/uploads/一般放的是圖片,可以屏蔽;
3、/data/系統數據文件,可以屏蔽;
5、/bin/系統文件可以屏蔽;
6、/install/安裝文件可以屏蔽;
7、/member/有會員的可以屏蔽;
8、/logreport/有統計報告的可以屏蔽;
9、/bjk/有加密的文件,可以屏蔽;
10、/js/,/css/可以屏蔽,留著是為了讓蜘蛛更好地了解網站結構,資源少的情況下,可以屏蔽。
11、網站地圖,sitemap要記得放進去,不要屏蔽,讓蜘蛛第一時間去看你的網站地圖,更快了解網站鏈接結構!
注意事項:
1.基礎語法中PS的點。
2.生效時間
robots是我們和搜索引擎之間的一個單方面的協議,不是我們今天寫上,明天百度就會遵守。想讓百度遵守是需要一個過程的,一般情況下是兩個月。但是也不排除當天寫,當天生效。所以在更改robots的時候,一定要小心小心再小心。一旦你的robots錯了,對整個網站的影響是巨大的。
3.不要隨便的屏蔽整站
4.為了網站安全,不要將后臺文件路徑寫在robots.txt文件中。比如dede做的網站,一般后臺地址是dede這路徑,但千萬不要將路徑寫在robots.txt中,以免被黑客攻擊。上面說到的/data /bin /install 也不要寫在robots.txt文件中。