Sitemap

CaelLab​(對話 | 貢獻)2026年4月19日 (日) 16:09的修訂


Sitemap(也譯作站點地圖、網站地圖)是用於描述網站域名下頁面、文件等資源的列表文件,其核心作用是為網站訪問者或網絡爬蟲提供網站的資源結構信息,輔助導航與內容抓取。在英文語境中,首字母大寫的Sitemap通常特指XML格式的爬蟲專用站點地圖,而小寫的site map則可泛指所有類型的站點地圖[1]。根據面向對象的不同,Sitemap可分為面向普通用戶的導航型站點地圖,以及面向搜尋引擎爬蟲的結構化站點地圖,其中XML格式的Sitemaps協議已成為主流搜尋引擎通用的站點信息提交標準[2]。

Sitemap
其他名稱 站點地圖、網站地圖
初始發布 2005年6月
協議版本 0.9
支持格式 XML、HTML、TXT等
開發者 Google、Yahoo!、Microsoft

類型

Sitemap根據設計目標與使用對象的不同,主要分為三類:

規劃型站點地圖

這類站點地圖是網站設計師在網站開發規劃階段使用的原型文檔,用於梳理網站的頁面層級與功能結構,輔助開發團隊明確網站的整體架構,不會對外發布。

用戶可見站點地圖

這類站點地圖通常以HTML頁面的形式呈現,以層級化的列表展示網站的重要頁面連結,面向網站的普通訪問者,幫助用戶快速定位所需內容,同時也可輔助網絡爬蟲了解網站結構[3]。部分站點會採用按字母排序的索引式站點地圖,作為層級化站點地圖的補充。

爬蟲專用結構化站點地圖

這類站點地圖是為網絡爬蟲(尤其是搜尋引擎爬蟲)設計的結構化文件,其中最主流的是XML格式的Sitemaps,此外也存在TXT格式的純URL列表等形式。這類文件可以向爬蟲明確告知網站內的可抓取資源,尤其適用於包含大量動態頁面、無法通過普通連結被爬蟲發現的網站[4]。在此基礎上,還衍生出了圖片Sitemap、視頻Sitemap等特化類型,用於向搜尋引擎提交網站內的多媒體資源信息。

XML Sitemaps協議

XML Sitemaps是目前應用最廣泛的爬蟲專用Sitemap格式,其對應的Sitemaps協議由Google主導制定,後成為各大搜尋引擎共同支持的標準。

協議規範

Sitemaps協議規定,XML格式的Sitemap文件必須採用UTF-8編碼,文件內的所有數據值需進行實體轉義。文件中可包含每個URL的相關元信息,包括:

  • loc:資源的URL地址
  • lastmod:資源的最後修改時間
  • changefreq:資源的更新頻率(僅作參考,部分搜尋引擎已忽略該字段)
  • priority:資源的相對優先級(僅作參考,部分搜尋引擎已忽略該字段)

[5] 對於包含大量URL的網站,還可使用Sitemap索引文件,將多個Sitemap文件整合在一起提交,單個Sitemap文件最多可包含5萬條URL。

示例

以下是一個簡單的XML Sitemap示例,包含三個頁面的信息:

<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
  <url>
    <loc>http://www.example.net/?id=who</loc>
    <lastmod>2009-09-22</lastmod>
  </url>
  <url>
    <loc>http://www.example.net/?id=what</loc>
    <lastmod>2009-09-22</lastmod>
  </url>
  <url>
    <loc>http://www.example.net/?id=how</loc>
    <lastmod>2009-09-22</lastmod>
  </url>
</urlset>

歷史

2005年6月,Google首次推出Sitemaps 0.84版本,旨在幫助網站開發者向搜尋引擎提交網站內的連結列表,解決動態頁面難以被爬蟲發現的問題[6]。 2006年11月,Google、Yahoo!與Microsoft(旗下必應搜尋引擎)共同宣布聯合支持Sitemaps協議,統一了站點地圖的標準格式,使得網站開發者只需提交一份Sitemap即可被所有支持該協議的搜尋引擎識別[7]。此後,Ask等其他主流搜尋引擎也陸續加入對該協議的支持,Sitemaps逐步成為搜尋引擎優化(SEO)領域的標準工具之一。