網站優化、整站排名、微信營銷
對于網站文件除了一般的網頁內容之外,還有sitemap和robots文件。這兩個文件比較特殊,上次我們已經介紹了sitemap的的相關內容,這次我們一起來看一下什么是網站robots.txt?我們應該怎么做好robots文件?
robots.txt是一個純文本文件,是爬蟲抓取網站的時候要查看的第一個文件,一般位于網站的根目錄下。robots.txt文件定義了爬蟲在爬取該網站時存在的限制,哪些部分爬蟲可以爬取,哪些不可以爬取(防君子不防小人),也限制了某些搜索引擎爬蟲的爬取。
1、屏蔽網站重復頁
有些網站為了方便用戶瀏覽而對一個內容提供多種瀏覽版本,但是蜘蛛分不清哪個是主,哪個是次,因此需要屏蔽網站重復頁。
2、保護網站安全
一些低級黑客就是通過搜索默認后臺登陸,以達到入侵網站的目標。
User-agent: *
Disallow: /admin/ 《禁止蜘蛛抓取admin目錄下所有文件》
3、防止盜鏈
一般盜鏈也就幾個人,可是一旦被搜索引擎“盜鏈”那你100M寬帶也吃不消,如果你做的不是圖片網站,又不想被搜索引擎“盜鏈”你的網站圖片。
User-agent: *
Disallow: .jpg$
4、提交網站地圖
現在做優化的都知道做網站地圖了,可是卻沒幾個會提交的,絕大多數人是干脆在網頁上加個鏈接,其實robots是支持這個功能的。
Sitemap:http://域名/sitemap.xml
5、禁止某二級域名的抓取
一些網站會對VIP會員提供一些特殊服務,卻又不想這個服務被搜索引擎檢索到。
User-agent: *
Disallow: /
robots.txt的幾個關鍵語法:
1、User-agent: 描述搜索引擎spider的名字。在“robots.txt“文件中,如果有多條 User-agent記錄,說明有多個robot會受到該協議的約束。所以,“robots.txt”文件中至少要有一條User- agent記錄。如果該項的值設為*(通配符),則該協議對任何搜索引擎機器人均有效。在“robots.txt”文件 中,“User-agent:*”這樣的記錄只能有一條。
2、Disallow: 要攔截的網址,不允許機器人訪問。
3、Allow: 允許訪問的網址
4、”*” : 通配符—匹配0或多個任意字符。
5、”$” : 匹配行結束符。
6、”#” : 注釋—說明性的文字,不寫也可。
7、Googlebot: 谷歌搜索機器人(也叫搜索蜘蛛)。
8、Baiduspider: 百度搜索機器人(也叫搜索蜘蛛)。
9、目錄、網址的寫法:都以以正斜線 (/) 開頭。
1、允許所有的robot訪問
User-agent: *
Disallow:
或者
User-agent: *
Allow: /
或者建一個空文件”robots.txt”即可。
2、僅禁止某個機器人訪問您的網站,如Baiduspider。
User-agent: Baiduspider
Disallow: /
3、僅允許某個機器人訪問您的網站,如Baiduspider。
User-agent: Baiduspider
Disallow:
User-agent: *
Disallow: /
4、禁止訪問特定目錄
User-agent: *
Disallow: /admin/
Disallow: /css/
Disallow:
5、要攔截對所有包含問號 (?) 的網址的訪問(具體地說,這種網址以您的域名開頭、后接任意字符串,然后接問號,而后又接任意字符串),請使用以下內容:
User-agent: *
Disallow: /*?
要指定與某個網址的結尾字符相匹配,請使用 $。例如,要攔截以 .xls 結尾的所有網址,請使用以下內容:
User-agent: *
Disallow: /*.xls$
您可將此模式匹配與 Allow 指令配合使用。例如,如果 ? 代表一個會話 ID,那么您可能希望排除包含 ? 的所有網址,以確保 Googlebot 不會抓取重復網頁。但是以 ? 結尾的網址可能是您希望包含在內的網頁的版本。在此情況下,您可以對您的 robots.txt 文件進行如下設置:
User-agent: *
Allow: /*?$
Disallow: /*?
Disallow: /*? 指令會阻止包含 ? 的所有網址(具體地說,它將攔截所有以您的域名開頭、后接任意字符串,然后接問號,而后又接任意字符串的網址)。
Allow: /*?$ 指令將允許以 ? 結尾的任何網址(具體地說,它將允許所有以您的域名開頭、后接任意字符串,然后接 ?,? 之后不接任何字符的網址)。
當然我們可以根據知名網站的robots.txt文件來修改而成,也可以使用愛站等工具按照自己的要求生成robots.txt文件。文件上傳后要驗證robots是否生效,在百度站長Robots里面優化檢測更新,這樣就可以讓它生效了!