潮人地東莞seo博客小編下面跟大家分享關于seo優化博客:robots寫法解析等問題,希望seo專員在做seo優化的過程中有所幫助,內容僅供參考。
在潮人地東莞seo博客當中發布了不止一篇關于robots文件的內容,對于網站的seo基礎優化來說,robots文件是一個比較重要的網站輔助文件之一,所以robots寫法的準確性也是至關重要的。今天小編和朋友們分享的主題就是關于robots文件的寫法,本文轉載自百度文庫的robots.txt寫法完全攻略。

當搜索引擎訪問一個網站時,它首先會檢查該網站的根域下是否有一個叫做robots.txt的純文本文件。Robots.t xt文件用于限定搜索引擎對其網站的訪問范圍,即告訴搜索引擎網站中哪些文件是允許它進行檢索(下載)的。這就是大家在網絡上常看到的“拒絕Robots訪問標準”(Robots Exclusion Standard)。下面我們簡稱RES。
seo博客相關推薦閱讀:seo博客技術分享:如何通過博客評論提升網站排名
Robots.txt文件的格式:
Robots.txt文件的格式比較特殊,它由記錄組成。這些記錄通過空行分開。其中每條記錄均由兩個域組成:
1) 一個User-Agent(用戶代理)字符串行;
2) 若干Disallow字符串行。
記錄格式為:<Field> “:” <value>
下面我們分別對這兩個域做進一步說明。
User-agent(用戶代理):
User-agent行(用戶代理行) 用于指定搜索引擎robot的名字,以Google的檢索程序Googlebot為例,有:User-agent: Googlebot
一個robots.txt中至少要有一條User-agent記錄。如果有多條User-agent記錄,則說明有多個ro bot會受到RES標準的限制。當然了,如果要指定所有的robot,只需用一個通配符”*”就搞定了,即:User-agen t: *
Disallow(拒絕訪問聲明):
在Robots.txt文件中,每條記錄的第二個域是Disallow:指令行。這些Disallow行聲明了該網站中不希望被訪問的文件和(或)目錄。例如”Disallow: email.htm”對文件的訪問進行了聲明,禁止Spiders下載網站上的email.htm文件。而”Disallow:/cgi-bin/”則對 cgi-bin目錄的訪問進行了聲明,拒絕Spiders進入該目錄及其子目錄。Disallow聲明行還具有通配符功能。例如上例中”Disallow:/cgi-bin/”聲明了拒絕搜索引擎對cgi-bin目錄及其子目錄的訪問,而 “Disallow:/bob”則拒絕搜索引擎對/bob.html和/bob/indes.html的訪問(即無論是名為bob的文件還是名為bob的目錄下的文件都不允許搜索引擎訪問)。Disallow記錄如果留空,則說明該網站的所有部分都向搜索引擎開放。
空格 & 注釋
在robots.txt文件中,凡以”#”開頭的行,均被視為注解內容,這和UNIX中的慣例是一樣的。但大家需要注意兩個 問題:
1)RES標準允許將注解內容放在指示行的末尾,但這種格式并不是所有的Spiders都能夠支持。譬如,并不是所有的Spider s都能夠正確理解”Disallow: bob#comment”這樣一條指令。有的Spiders就會誤解為Disallow的是”bob#comment”。最好的辦法是使注解自成一行。
2) RES標準允許在一個指令行的開頭存在空格,象”Disallow: bob #comment”,但我們也并不建議大家這么做。
Robots.txt文件的創建:
需要注意的是,應當在UNIX命令行終端模式下創建Robots.txt純文本文件。好的文本編輯器一般都能夠提供UNIX 模式功能,或者你的FTP客戶端軟件也“應該”能夠替你轉換過來。如果你試圖用一個沒有提供文本編輯模式的HTML編輯器來生成你的robots.txt純文本文件,那你可就是瞎子打蚊子――白費力氣了。
對RES標準的擴展:
盡管已經提出了一些擴展標準,如Allow行或Robot版本控制(例如應該忽略大小寫和版本號),但尚未得到RES工作組 的正式批準認可。
附錄I. Robots.txt用法舉例:
使用通配符”*”,可設置對所有robot的訪問權限。
User-agent: *
Disallow:
表明:允許所有搜索引擎訪問網站下的所有內容。
User-agent: *
Disallow: /
表明:禁止所有搜索引擎對網站下所有網頁的訪問。
User-agent: *
Disallow: /cgi-bin/Disallow: /images/
表明:禁止所有搜索引擎進入網站的cgi-bin和images目錄及其下所有子目錄。需要注意的是對每一個目錄必須分開聲明。
User-agent: Roverdog
Disallow: /
表明:禁止Roverdog訪問網站上的任何文件。
User-agent: Googlebot
Disallow: cheese.htm
表明:禁止Google的Googlebot訪問其網站下的cheese.htm文件。
上面介紹了一些簡單的設置,對于比較復雜的設置,可參看一些大型站點如CNN或Looksmart的robots.txt文 件(www.abc.com /robots.txt, www.abc.com /robots.txt)
附錄II. 相關robots.txt文章參考:
1. Robots.txt常見問題解析
2. Robots Meta Tag的使用
3. Robots.txt檢測程序
Robots.txt常見問題解析:
我們開發了一個針對robots.txt文件的“驗檢程序”,同時又設計了一個搜索程序,專門下載robots.txt文件,以此對新推出的這個“robots.txt驗檢程序”進行測試。在對DMOZ(ODP)中所鏈接的站點進行遍歷,共計檢索24 0萬個站點后,我們總共找到了大概75k的robots.txt文件。
在這些robots.txt文件中,我們發現了大量的而且是形形色色的問題。有超過5%的robots.txt文件使用了錯 誤格式,有超過2%的文件由于使用的是極其拙劣的格式而導致無法為任何SPIDER讀取。我們將發現的一些問題在下面列出來供大 家參考借鑒:
錯誤1―語法混用
例如:
User-agent: *
Disallow: scooter
正確語法應為:
User-agent: scooter
Disallow: *
錯誤2―一行Disallow聲明多個目錄
這是一個比較常見的錯誤。我們發現很多網站在其robots.txt中,在一個Disallow指令行中放入了多個目錄。譬 如:Disallow: /css/ /cgi-bin/images/
絕大多數的spiders對上述聲明行都無法做出正確的解析,有些Spiders會忽略其空格而解析為/css//cgi-bi n//images/,或只解析/images/或/css/,或者根本不予解析。
正確的語法應為:
Disallow: /css/
Disallow: /cgi-bin/
Disallow: /images/
錯誤3―在DOS模式下編輯robots.txt文件
這也是一個比較常見的錯誤。正確的做法應該是在UNIX模式下編輯你的robots.txt文件并以ASCII碼格式上傳。顯然并非所有的FTP客戶端軟件都能夠天衣無縫地將文件格式轉換為UNIX命令行終端,所以在編輯robots.txt文件時,一定要確保你的文本編輯器是在UNIX模式下。
錯誤4―在指示行末尾加注
在robots.txt文件中,凡以”#”開頭的行,均被視為注解內容,這和UNIX中的慣例是一樣的。例如:Disall ow: /cgi-bin/ # this bans robots from our cgi-bin
雖然根據RES標準,在指示行的末尾加注是可行的,但這種格式在過去卻并非所有的Spiders都能夠支持,有些Spide rs干脆就把整個句子視為注解內容直接跳過去不讀。當然我們知道現如今搜索引擎基本上都能夠支持這種格式,不過―仍有可能無法被某些搜索引擎正確解讀,你冒得起這個險嗎?我們建議在編輯robots.txt文件時,最好讓注解自成一行。
錯誤5―指令行前有空格
例如”Disallow:/cgi-bin/”,雖然RES標準并未對這種格式予以特別說明,但我們對這種格式是持極力反對態度的。同樣的問題擺在你面前 你冒得起無法被Spiders正確解讀的險嗎?
錯誤6–404重定向至另一頁面
一般沒有robots.txt的網站會將對robots.txt文件的調用請求轉至另一頁面。這種重定向通常不會產生服務器狀態錯誤或重定向狀態信息。然而因為是Spiders自己決定它看到的是robots.txt文件還是一個.html文件。雖然理論上應該不會有什么問題,不過為了保險起見,不妨在你服務器的頂級目錄下放一個空的robots.txt文件。在www.google.com/bot.htmseo運營需要什么技術l下,也提供了相同的建議―“如欲避免網絡服務器日志中的出錯信息‘找不到文件’,可在其根域下創建一個空的robots.txt文件。”
錯誤7―聲明自相矛盾
例如:
USER-AGENT: EXCITE
DISALLOW:
雖然RES標準忽略大小寫(CaseSensitive),但目錄和文件名卻是大小寫敏感的。所以對于”USER-AGENT”和”DISALLOW”指令,用大小 寫都是可以的。但對于所聲明的目錄或文件名卻一定要注意大小寫的問題。
錯誤8―列出所有文件
這也是一種常見錯誤,不厭其煩地將目錄下文件全數列出。例如:
Disallow: /AL/Alabama.html
Disallow: /AL/AR做好seo需要什么技術.html
Disallow: /Az/AZ.html
Disallow: /Az/bali.html
Disallow: /Az/bed-breakfast.html
其實,上面這么多聲明行只需用目錄選項來替代:
Disallow: /AL
Disallow: /Az
需要注意的是:反斜杠”/”表示禁止搜索引擎進入該目錄。如果只有幾十個文件需要設置訪問權限,那倒也無可厚非。問題是我們發現有一個robots.txt文件中列出了有400k,多達4,000個文件。我們只是納悶看到這么多聲明,有多少Spide rs會掉頭而去。
錯誤9―自創ALLOW指令
沒有ALLOW指令,只有DISALLOW指令!我們發現有這樣的用法:
User-agent: Spot
Disallow: /john/
allow: /jane/
正確寫法應為:
User-agent: Spot
Disallow: /john/
Disallow:
錯誤10―對聲明的目錄無反斜杠標識
例如我們發現有這樣的例子:
User-agent: Spot
Disallow: john
對這樣的記錄Spider該怎么反應?按照RES標準,Spider會將名為”john”的文件和名為”john”的目錄都 DISALLOW。所以要記得使用”/”來標識所聲明的路徑(目錄)。
我們還發現,有些網站的優化工作做得真徹底,竟然在其robots.txt中也放了關鍵詞(費解,不明白他們怎么想的)。這 些人一定是把他們的robots.txt純文本文件當作是html文件了。(要記住:在FrontPage下是不可能正確創建r obots.txt文件的)
錯誤11―網絡服務器端的錯誤配置
為什么對robots.txt文件的調用請求會產生一個二進制文件?只有網絡服務器或FTP客戶端軟件錯誤設置的情況下才可 能發生這種錯誤。建議大家定期檢查自己的robots.txt文件(http:/www.abc.com /robots.txt)。
服務器/域名“農場”
搜索引擎檢測服務器或域名“農場”(即包含巨量站點)的一個簡單途徑是看它們的robots.txt。我們發現規模在400 到500個域名的大型域名“農場”,其“庫”內站點使用都是同一個robots.txt文件。seo技術去哪里可以學這也就相當于告訴搜索引擎這些使用同一robots.txt文件的站點是相關聯的。
Google率先支持通配符:
Google是第一家能夠支持robots.txt中通配符文件擴展名的搜索引擎。例如:
User-agent: googlebot
Disallow: *.cgi
不過注意了,由于目前只有Google能夠支持這種格式,所以”USER-AGENT”只能是“Googlebot”。
以上是潮人地東莞seo博客跟大家分享關于seo優化博客:robots寫法解析等問題,希望能對大家有所幫助,若有不足之處,請諒解,我們大家可以一起討論關于網站seo優化排名的技巧,一起學習,以上內容僅供參考。