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