Posted on 2007-08-28 16:36
天空蒼茫 閱讀(483)
評論(0) 編輯 收藏 所屬分類:
jsp學習 、
sql2000學習
Google SiteMap Protocol是Google自己推出的一種站點地圖協議,此協議文件基于早期的robots.txt文件協議,并有所升級。在Google官方指南中指出加入了Google SiteMap文件的網站將更有利于Google網頁爬行機器人的爬行索引,這樣將提高索引網站內容的效率和準確度。文件協議應用了簡單的XML格式,一共用到6個標簽,其中關鍵標簽包括鏈接地址、更新時間、更新頻率和索引優先權。
Google SiteMap文件生成后格式如下:
http://duduwolf.winzheng.com
2005-06-03T04:20-08:00
always
1.0
http://duduwolf.winzheng.com/post/140.html
2005-06-02T20:20:36Z
daily
0.8
XML標簽
- changefreq:頁面內容更新頻率。
- lastmod:頁面最后修改時間
- loc:頁面永久鏈接地址
- priority:相對于其他頁面的優先權
- url:相對于前4個標簽的父標簽
- urlset:相對于前5個標簽的父標簽
我將一句一句分解講解這個xml文件的每一個標簽:
- <urlset xmlns="http://www.google.com/schemas/sitemap/0.84">
這一行定義了此xml文件的命名空間,相當于網頁文件中的<html>標簽一樣的作用。
- 這是具體某一個鏈接的定義入口,你所希望展示在SiteMap文件中的每一個鏈接都要用<url>和</url>包含在里面,這是必須的。
- http://duduwolf.winzheng.com用<loc>描述出具體的鏈接地址,這里需要注意的是鏈接地址中的一些特殊字符必須轉換為XML(HTML)定義的轉義字符,如下表:
字符 |
轉義后的字符 |
HTML字符 |
字符編碼 |
and(和) |
& |
& |
& |
單引號 |
' |
' |
' |
雙引號 |
" |
" |
" |
大于號 |
> |
> |
> |
小于號 |
< |
< |
< |
- 2005-06-03T04:20:32-08:00<lastmod>是用來指定該鏈接的最后更新時間,這個很重要。Google的機器人會在索引此鏈接前先和上次索引記錄的最后更新時間進行比較,如果時間一樣就會跳過不再索引。所以如果你的鏈接內容基于上次Google索引時的內容有所改變,應該更新該時間,讓Google下次索引時會重新對該鏈接內容進行分析和提取關鍵字。這里必須用ISO 8601中指定的時間格式進行描述,格式化的時間格式如下:
- 年:YYYY(2005)
- 年和月:YYYY-MM(2005-06)
- 年月日:YYYY-MM-DD(2005-06-04)
- 年月日小時分鐘:YYYY-MM-DDThh:mmTZD(2005-06-04T10:37+08:00)
- 年月日小時分鐘秒:YYYY-MM-DDThh:mmTZD(2005-06-04T10:37:30+08:00)
這里需注意的是TZD,TZD指定就是本地時間區域標記,像中國就是+08:00了
- always用這個標簽告訴Google此鏈接可能會出現的更新頻率,比如首頁肯定就要用always(經常),而對于很久前的鏈接或者不再更新內容的鏈接就可以用yearly(每年)。這里可以用來描述的單詞共這幾個:"always", "hourly", "daily", "weekly", "monthly", "yearly",具體含義我就不用解釋了吧,光看單詞的意思就明白了。
-
1.0
<priority>是用來指定此鏈接相對于其他鏈接的優先權比值,此值定于0.0 - 1.0之間
- 還有</url>和</urlset>,這兩個就是來關閉xml標簽的,這和HTML中的</body>和</html>是一個道理
- 另外需要注意的是,這個xml文件必須是utf-8的編碼格式,不管你是手動生成還是通過代碼生成,建議最好檢查一下xml文件是否是utf-8編碼,最簡單的方法就是用記事本打開xml然后另存為時選擇編碼(或轉換器)為UTF-8。