[Java]SiteMap Creater-簡介SiteMap.xml

大部份有寫blog的人應該都知道SiteMap是什麼東西,網站地圖,以前網站做SiteMap是讓使用者更方便找到資料,如今的SiteMap功能確是讓搜尋引擎更方便快速的取得資料。

What is SiteMap?

SiteMap對於一個網站來說有好有壞,好處就是可以直接提供資料給搜尋引擎,讓搜尋引擎更快速的來抓取資料,壞處呢?相對的資料也很容易被其它有心人事直接取走使用,所以在取捨上就需要好好考慮了,不過大部份的網站還是選擇提供SiteMap。

sitemap1.png

相關說明:wiki資料什麼是 Sitemap?

SiteMap格式?

SiteMap的格式是以xml的方式提供,不管是bing、Google或是yahoo等各大搜尋引擎都有相同的格式,全都遵守SiteMaps.org的規定,所以只需要建立一份資料就可以一次性的提供給各大搜尋引擎。

Sitemap 必須:

  • 以起始 <urlset> 標記做為開頭,並以結束 </urlset> 標記做為結尾。
  • 指定 <urlset> 內的名稱領域 (通訊協定標準)。
  • 讓每個 URL 中包含一個<url> 項目做為母層 XML 標記。
  • 在每個 <url> 母層標記包含一個 <loc> 子層項目。

範例:

<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
   <url>
      <loc>http://blog.yslifes.com/</loc>
      <lastmod>2010-01-01</lastmod>
      <changefreq>monthly</changefreq>
      <priority>0.8</priority>
   </url>
</urlset> 
sitemap2.png

更多詳細內容請參考Sitemaps XML 格式

通知搜尋引擎

有幾種方法可以通知搜尋引擎

  1. 透過搜尋引擎的提交介面進行提交
  2. 在您網站的 robots.txt 檔案中指定位置
  3. 傳送 HTTP 要求

第一種是利用搜尋引擎提供者提供的管理工具,直接告知SiteMap的位置,不過這需要經過一個簡單的認證動作,來確認網站的所有權,對於使用無法自由控制網站的人並不太適用。

Google Webmaster CentralY

Webmaster Center – Bing

第二種是在網站根目錄下告知SiteMap的網址,這也需要有網站的管理權,格式如下:

Sitemap: 

http://www.example.com/sitemap.xml

第三種是利用HTTP要求,這有點像blog ping?傳送一串字串給某一個網址,此時回應200時就是提交成功,否則則有問題

<searchengine_URL>/ping?sitemap=http://www.example.com/sitemap.gz

ps.其中yahoo需要一個應用程式ID才可以進行更新

更多詳細內容請參考Sitemaps XML 格式

下一篇會先介紹SiteMap Creater的運作方式,爾後再敍述程式內容。

發表迴響