跳至內容

Sitemap

出自轻之舟百科
Sitemap
中文名 站點地圖
英文名 Sitemap
協議版本 0.9(sitemaps.org)
首發時間 2005年6月
首發機構 Google
標準制定機構 GoogleYahoo!Microsoft(聯合)
文件擴展名 .xml、.xml.gz、.txt
格式類型 XML / 純文本
標準網站 www.sitemaps.org

Sitemap(全稱:Sitemaps Protocol,中文常譯為「站點地圖協議」)是一種用於告知搜尋引擎網站上可供抓取的網頁地址列表的開放協議標準。網站管理員可將網站中的網頁URL製作成標準化的Sitemap文件,以指引搜尋引擎爬蟲(Crawler或Spider)快速、全面地抓取或更新網站內容[1][2]。該協議最初由Google在2005年6月推出,後於2006年11月獲得微軟Microsoft)和雅虎Yahoo!)的共同支持,形成了行業統一的Sitemaps 0.9協議標準[3][4]。Sitemap文件作為URL包含協議,與作為URL排除協議的robots.txt相互補充,共同幫助搜尋引擎更高效地發現網站內容[5]

歷史

Sitemap協議最初由Google於2005年6月以Sitemaps 0.84版本推出,旨在讓網站開發者能夠發布其站點中所有頁面的連結列表,從而改善大型動態網站的搜尋引擎發現機制[3][6]。2006年11月,GoogleYahoo!Microsoft宣布聯合支持該協議,並將命名空間版本變更為Sitemap 0.90[4][7]。此後,三家公司共同啟動了Sitemaps.org計劃,為網站管理員提供統一的協議指引[8]

2007年4月,Ask.comIBM宣布加入對Sitemaps協議的支持行列[9]。同年,GoogleYahoo!微軟在Sitemap協議中加入了通過robots.txt自動發現Sitemap文件的功能[10]。截至目前,Sitemaps.org官方網站已擁有18個語種的版本,Sitemap協議被全球主流搜尋引擎廣泛採納[10]

文件格式與規範

Sitemap協議支持多種文件格式:XML格式、純文本(TXT)格式、RSS/Atom格式以及Sitemap索引(Sitemap Index)格式[2][11]

XML格式

XML格式是應用最為廣泛的標準格式,文件採用UTF-8編碼,根節點為<urlset>,並聲明命名空間為http://www.sitemaps.org/schemas/sitemap/0.9[1][12]

每個URL條目(<url>)包含以下子元素:

  • <loc>:頁面的完整URL(含協議,必需)[13][14]
  • <lastmod>:頁面最後修改日期(可選,格式為W3C Datetime或YYYY-MM-DD)[13][14]
  • <changefreq>:頁面可能發生更改的頻率(可選,有效值:always、hourly、daily、weekly、monthly、yearly、never)[15][14]
  • <priority>:該頁面在站內的相對優先級(可選,範圍0.0至1.0)[15][14]

實際使用中,Google官方文檔已明確表示<changefreq><priority>兩個標籤在多數情況下被忽略,僅有<lastmod>在數據準確時被參考[5][16]

純文本(TXT)格式

純文本格式是一種更為簡單的Sitemap實現方式。網站管理員可以創建一個純文本文件(擴展名為.txt),文件中每行包含一個完整的URL地址。該文件同樣需遵循容量限制,且必須使用UTF-8或GBK編碼[1][17]。URL必須是完整路徑(含http://或https://),文件中不得包含網址列表以外的任何信息[1]

純文本Sitemap文件的示例內容如下:

https://www.example.com/
https://www.example.com/about/
https://www.example.com/contact/
https://www.example.com/products/

純文本格式適合小型網站或需要快速提交URL列表的場景。與XML格式相比,純文本格式不支持<lastmod><changefreq><priority>等元數據,但具有更低的創建門檻和更快的解析速度[17][11]

Sitemap索引格式

當網站包含的URL數量超過單個Sitemap文件的容量限制時,可使用Sitemap索引文件(Sitemap Index)將多個Sitemap文件聚合在一起。Sitemap索引文件本身是一個XML文件,根節點為<sitemapindex>,每個子Sitemap通過<sitemap><loc>標籤指定其位置[1][18]

Sitemap索引文件示例:

<?xml version="1.0" encoding="UTF-8"?>
<sitemapindex xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
  <sitemap>
    <loc>https://www.example.com/sitemap1.xml</loc>
    <lastmod>2024-10-01</lastmod>
  </sitemap>
  <sitemap>
    <loc>https://www.example.com/sitemap2.xml</loc>
    <lastmod>2024-10-01</lastmod>
  </sitemap>
</sitemapindex>

Sitemap索引文件本身也受容量限制,每個索引文件最多可包含50,000個子Sitemap條目[1]

RSS/Atom格式

RSS 2.0和Atom 1.0格式也可作為Sitemap使用。搜尋引擎通過讀取RSS/Atom feed中的條目URL來發現網站內容。這種格式通常由內容管理系統(CMS)自動生成,特別適合以文章、視頻等內容為主的網站[11][19]。與XML Sitemap格式相比,RSS/Atom feed提供的時間戳信息通常更準確,因為它們反映了內容的實際發布時間。

技術限制

根據W3C標準和主流搜尋引擎的規範,單個Sitemap文件最多可包含50,000個URL,未壓縮體積不得超過50MB(Google規範)或10MB(百度規範)[20][1][21]。URL長度限制為2,048個字符[20][13]。對於超過限制的超大型網站,可使用Sitemap索引文件將多個Sitemap文件聚合提交[1][18]。此外,Sitemap文件可採用gzip格式壓縮(擴展名為.xml.gz或.txt.gz)以節省帶寬[1][22]

不同搜尋引擎對Sitemap文件大小的具體要求如下:

搜尋引擎 單個文件容量上限 URL數量上限
Google 50 MB(未壓縮) 50,000條
百度 10 MB(未壓縮) 50,000條
Bing 50 MB(未壓縮) 50,000條

Sitemap的創建方法

手動創建

對於小型網站,網站管理員可以手動創建Sitemap文件。XML格式需要遵循sitemaps.org協議規範,使用標準的XML標籤結構[23][14]。純文本格式則更為簡單,只需將URL逐行列出即可[17]。手動創建適合URL數量較少且不頻繁變動的網站。

使用生成工具

大多數現代內容管理系統(CMS)提供自動化的Sitemap生成功能:

  • WordPress:可通過Yoast SEO、Rank Math等插件自動生成並定期更新Sitemap文件,通常位於/sitemap_index.xml路徑[23][24]
  • 其他CMS平台JoomlaDrupal、織夢CMS等均有相應的Sitemap擴展模塊或內置功能[25]
  • 在線生成器:對於靜態網站或不支持自動生成功能的網站,可使用在線Sitemap生成工具(如xml-sitemaps.com、Apify Sitemap Generator),通過爬取網站頁面自動生成符合規範的Sitemap文件[26][27]
  • 腳本生成:技術團隊可編寫腳本(如PythonPHPGo等語言)定期生成並更新Sitemap文件,並通過計劃任務(cron job)實現自動化[28]

向搜尋引擎提交Sitemap

通過robots.txt提交

將Sitemap文件的位置添加到網站根目錄的robots.txt文件中,是告知搜尋引擎存在Sitemap的標準方法之一。搜尋引擎爬蟲在訪問網站時首先會讀取robots.txt文件,從而發現Sitemap的URL[10][29]

robots.txt文件中添加Sitemap指令的語法:

User-agent: *
Disallow: /admin/
Disallow: /private/
Sitemap: https://www.example.com/sitemap.xml
Sitemap: https://www.example.com/sitemap-news.xml

Sitemap指令不區分大小寫,可出現在robots.txt文件的任何位置,建議放在文件末尾。如果網站有多個Sitemap文件,可以添加多個Sitemap指令[30][31]

通過搜尋引擎站長工具提交

各大搜尋引擎均提供站長工具或資源平台,供網站管理員手動提交Sitemap文件:

  • Google Search Console:登錄後選擇目標網站,在左側導航欄中找到「Sitemaps」選項,輸入Sitemap文件的完整URL並點擊提交[32][33]
  • Bing Webmaster Tools:登錄Bing站長平台,選擇目標網站,在左側菜單欄中找到「Sitemaps」選項,輸入Sitemap URL並提交[34][35]
  • 百度搜索資源平台:登錄百度站長平台,在「數據提交」或「連結提交」模塊中找到Sitemap提交入口,輸入Sitemap文件的完整路徑並提交。百度要求Sitemap文件必須放置在網站根目錄下,且僅對已驗證站點開放提交功能[36][37]

通過Ping通知提交

Google提供了Ping通知機制,允許網站管理員在Sitemap文件更新後主動通知Google進行抓取[38]。Ping請求的格式為:

https://www.google.com/ping?sitemap=https://www.example.com/sitemap.xml

提交後,Google會在適當的時候重新抓取Sitemap文件。Ping機制僅用於通知Sitemap已更新,不應頻繁提交未變更的Sitemap文件[16]Bing也提供類似的通知端點:

https://www.bing.com/ping?sitemap=https://www.example.com/sitemap.xml

Sitemap的作用與局限

Sitemap不直接影響頁面的搜尋引擎排名。Google官方已明確表示,Sitemap屬於「發現(Discovery)」階段的工具,而非「排名(Ranking)」信號[39][40]

Sitemap的主要作用包括:

  • 幫助搜尋引擎發現新發布的頁面,特別是缺乏外部連結的新網站或新建頁面。
  • 發現網站中的「孤兒頁面」(沒有其他頁面連結指向的頁面)。
  • 提供頁面的最後更新時間等信息,幫助搜尋引擎優化抓取調度。
  • 告知搜尋引擎網站中重要的多媒體內容(圖片、視頻、新聞等)的位置。

Sitemap的局限性:

  • 是建議而非命令:搜尋引擎可以選擇不抓取Sitemap中列出的URL,Sitemap不保證頁面一定會被索引[5][13]
  • 不替代內部連結:良好的網站內部連結結構仍然是搜尋引擎發現頁面的最主要方式,Sitemap不能替代完善的內部連結策略[39][41]
  • 不包含不相關內容:Sitemap中不應包含404錯誤頁面、301重定向頁面或Noindex頁面,這些「髒數據」會降低搜尋引擎對網站的信任度[39]

何時需要使用Sitemap

根據Google官方建議,以下情況強烈推薦使用Sitemap[41]

  • 網站規模極大(包含大量頁面),內部連結難以覆蓋所有頁面。
  • 網站為新網站,幾乎沒有任何外部連結指向。
  • 網站包含大量富媒體內容(視頻、圖片)或新聞內容,需要搜尋引擎更好地理解這些內容。
  • 網站頁面動態生成,或通過AJAX、JavaScript等方式加載內容。

對於小型且內部連結完善、所有重要頁面均能從首頁直達的網站,Sitemap並非必需。

Sitemap擴展協議

Sitemap協議在標準XML格式之外還支持針對特定內容類型的擴展命名空間,幫助搜尋引擎更準確地理解和索引富媒體內容[22][42]

圖片擴展

圖片Sitemap擴展(<image:image>命名空間)允許在標準Sitemap中為每個URL添加圖片相關信息。搜尋引擎可以利用這些信息更好地發現和索引網站中的圖片內容,增加圖片在圖片搜索中展示的機會[42][43]

視頻擴展

視頻Sitemap擴展(<video:video>命名空間)支持提供視頻的詳細信息,包括視頻時長、播放時長、內容評級、適齡分級以及視頻縮略圖URL等[42][43]。這有助於搜尋引擎在搜索結果中正確展示視頻預覽和相關信息。

新聞擴展

新聞Sitemap擴展(<news:news>命名空間)專門面向新聞類網站,用於提供新聞報道的標題、發布日期等信息。Google新聞會利用這些信息將內容納入新聞搜索索引[42][43]

多語言/多地區擴展

hreflang擴展(<xhtml:link rel="alternate" hreflang="..." />)允許網站管理員在同一Sitemap中指定頁面的多語言或多地區版本。這對於面向不同語言用戶群體的國際化網站尤為重要,有助於搜尋引擎向用戶呈現正確的語言版本[43][44]

擴展命名空間聲明示例

<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"
        xmlns:image="http://www.google.com/schemas/sitemap-image/1.1"
        xmlns:video="http://www.google.com/schemas/sitemap-video/1.1"
        xmlns:news="http://www.google.com/schemas/sitemap-news/0.9"
        xmlns:xhtml="http://www.w3.org/1999/xhtml">
  <url>
    <loc>https://www.example.com/article</loc>
    <image:image>
      <image:loc>https://www.example.com/image.jpg</image:loc>
    </image:image>
  </url>
</urlset>

Sitemap的維護與更新

Sitemap文件需要保持與網站內容的同步。最佳實踐包括:

  • 定期更新:當網站添加新頁面、修改現有頁面或刪除頁面時,應及時更新Sitemap文件。對於內容頻繁變動的網站(如新聞站點),建議每日甚至每小時更新Sitemap[28][45]
  • 自動化生成:通過CMS插件或計劃任務(cron job)實現Sitemap的自動生成,避免人工操作遺漏[28]
  • 監控狀態:定期登錄搜尋引擎的站長工具,查看Sitemap的提交狀態、已索引URL數量以及任何錯誤報告。常見錯誤包括URL無法訪問、格式錯誤、文件過大等[32][36]
  • 清理無效URL:確保Sitemap中不包含返回404(頁面未找到)、301(永久重定向)或500(伺服器錯誤)的URL。及時移除已刪除或不再需要索引的頁面[39]

參考文獻

  1. 1.0 1.1 1.2 1.3 1.4 1.5 1.6 1.7 1.8 百度Sitemap協議 - 百度用戶服務中心
  2. 2.0 2.1 Sitemap提交工具 - 百度資源平台
  3. 3.0 3.1 Ensuring government is only one search away: Implementing the Sitemap protocol - W3C Position Paper
  4. 4.0 4.1 Google/雅虎/微軟宣布統一站點地圖標準 - ZOL新聞
  5. 5.0 5.1 5.2 XML Sitemap 最佳實踐:讓搜尋引擎準確發現你的每一個重要頁面
  6. Digital Marketing Handbook - Sitemaps History
  7. Digital Marketing Handbook - Sitemaps History
  8. Google, Yahoo & Microsoft Team for Sitemaps.org - Search Engine Journal
  9. 三巨頭更新Sitemap協議 IBM與Ask加盟 - ZOL
  10. 10.0 10.1 10.2 Google、微軟和雅虎增強Sitemap協議 - PConline
  11. 11.0 11.1 11.2 Sitemap - Ryte Wiki
  12. XML Sitemap 最佳實踐:語法與結構
  13. 13.0 13.1 13.2 13.3 What is an XML Sitemap? - Woorank
  14. 14.0 14.1 14.2 14.3 14.4 Site SEO Optimization SiteMap Protocol - ProgrammerSought
  15. 15.0 15.1 百度Sitemap提交工具 - 格式說明
  16. 16.0 16.1 Sitemap格式與提交 - UJCMS
  17. 17.0 17.1 17.2 百度Sitemap提交工具 - TXT格式說明
  18. 18.0 18.1 Woorank Sitemap Guide - Sitemap Index
  19. 建站SEO優化之站點地圖sitemap - 阿里雲開發者
  20. 20.0 20.1 網站地圖生成技術解析 - 百度開發者中心
  21. 網站創建Sitemap時有哪些注意事項? - Chinaz
  22. 22.0 22.1 Sitemap Package - Go Packages
  23. 23.0 23.1 How to submit your website to search engines - Hostinger
  24. Lightweight Sitemap Generator - WordPress Plugin
  25. 如何在robots裏面提交網站地圖 - ShuyeIDC
  26. XML Sitemap Generator - Apify
  27. Sitemap Generator Tool - Search Engine Land
  28. 28.0 28.1 28.2 How to Update Sitemap for Better SEO Performance? - Digitalocus
  29. robots.txt文件建立指南 - Google Developers
  30. 如何在robots裏面提交網站地圖 - ShuyeIDC
  31. 如何在robots裏面提交網站地圖 - ShuyeIDC
  32. 32.0 32.1 XML Sitemap - Ryte
  33. How to submit your website to search engines - Hostinger
  34. Pro-Sites sitemap submission in Bing - Microsoft Q&A
  35. How to submit your website to search engines - Hostinger
  36. 36.0 36.1 百度搜索資源平台 - Sitemap提交
  37. 如何提交網站地圖給百度 - 百度經驗
  38. Google Sitemap構建指南 - Google Developers
  39. 39.0 39.1 39.2 39.3 Sitemap網站地圖終極指南(2025實戰進階版) - Yige Tech
  40. 什麼是Sitemap - Google Search Central
  41. 41.0 41.1 何時需要使用Sitemap - Google Search Central
  42. 42.0 42.1 42.2 42.3 什麼是Sitemap - Google Search Central
  43. 43.0 43.1 43.2 43.3 go-sitemap-parser - Go Packages
  44. What is an XML Sitemap? - Woorank
  45. 連結提交-百度站長平台工具使用幫助 - W3CSchool