2025 年網站還需要支援 favicon.ico 嗎?

2025 年關於 favicon.ico 的實用說明:現代瀏覽器不再強制要求它,但保留它可以減少伺服器日誌雜訊,並兼顧舊工具。

短答案

嚴格來說,現代瀏覽器(Chrome、Edge、Safari、Firefox)已經不再需要 .ico。但實際使用中,強烈建議保留。

如果不放 favicon.ico,伺服器日誌會被 404 刷滿。很多舊爬蟲和 RSS 閱讀器不讀 HTML 的 head,會直接請求根目錄的 /favicon.ico。

2025 年建議設定

涵蓋常見情境只需要 3–4 個檔案,不必再產生幾十種舊格式尺寸:

1. favicon.ico(32×32)——相容和後備

  • 必須放在網站根目錄(/favicon.ico)
  • 主要用來減少日誌報錯,並服務舊工具

2. icon.svg——現代主力

  • 現代瀏覽器優先使用
  • 任意縮放都不損失清晰度

3. apple-touch-icon.png(180×180)——iOS

  • 使用者在 iPhone/iPad 上「加入主畫面」時使用
  • 不必準備多種尺寸,180×180 涵蓋所有 iOS 裝置

4. manifest.webmanifest(可選)

  • 主要用於 Android 和 PWA 安裝
  • 定義 192×192 和 512×512 的 PNG 圖示

實作程式碼(HTML / Nuxt Head)

最精簡、也夠現代的寫法:

<head>
  <!-- 1. Modern SVG (highest priority) -->
  <link rel="icon" href="/icon.svg" type="image/svg+xml">

  <!-- 2. Apple iOS icon -->
  <link rel="apple-touch-icon" href="/apple-touch-icon.png">

  <!-- 3. Traditional .ico (fallback) -->
  <!-- Note: Adding sizes="any" tells Chrome this is a bitmap, -->
  <!-- so Chrome will prefer SVG over ICO -->
  <link rel="icon" href="/favicon.ico" sizes="any">
  
  <!-- 4. Android/PWA configuration -->
  <link rel="manifest" href="/manifest.webmanifest">
</head>

Nuxt.js 專案

在 nuxt.config.ts 或頁面元件裡:

useHead({
  link: [
    { rel: 'icon', href: '/icon.svg', type: 'image/svg+xml' },
    { rel: 'apple-touch-icon', href: '/apple-touch-icon.png' },
    { rel: 'icon', href: '/favicon.ico', sizes: 'any' },
    { rel: 'manifest', href: '/manifest.webmanifest' },
  ],
})

為什麼還要留 favicon.ico?

日誌更乾淨

沒有 favicon.ico,伺服器日誌會充滿 404。機器人、爬蟲、RSS 閱讀器會自動請求 /favicon.ico,每次都記一條錯誤。雜訊一大,真正的問題更難看清。

舊工具還能用

不少舊工具、RSS 閱讀器、書籤管理和瀏覽器擴充功能仍預設根目錄有 favicon.ico。現代瀏覽器不需要它,但這些工具往往不讀 HTML head,會直接打根路徑。

成本幾乎為零

一個 32×32 的 favicon.ico 通常不到 2KB,也幾乎不用維護。乾淨的日誌和更廣的相容,遠大於這點成本。

現代做法:SVG 優先

為了相容仍保留 favicon.ico,但主力圖示應該是 SVG:

  • 不依賴解析度: 從 16×16 到 512×512 都清晰
  • 檔案更小: 常常比同等 PNG 更小
  • 更耐用: 高解析度螢幕和以後的裝置都適用
  • 一個檔案: 一份 SVG 可以取代多種 PNG 尺寸

Chrome、Firefox、Safari、Edge 都支援 SVG 圖示。ICO 那條 link 加上 sizes="any",有 SVG 時瀏覽器會優先用 SVG。

重點

  • 別刪 .ico: 瀏覽器可能不會用它,但放在根目錄能減少日誌雜訊,也兼顧舊工具。
  • SVG 是趨勢: 維護一份 SVG,就能解決大部分解析度問題。
  • 設定盡量精簡: 3–4 個檔案(favicon.ico、icon.svg、apple-touch-icon.png,可選 manifest.webmanifest)就能涵蓋常見情境。
  • 順序有影響: 先寫 SVG,再寫帶 sizes="any" 的 ICO,現代瀏覽器才會選較好的格式。

小結

2025 年,現代瀏覽器技術上不需要 favicon.ico,但保留它仍是好習慣:減少日誌雜訊、兼顧舊工具、成本幾乎為零。再配上 SVG,就是兼顧現在和以後的做法。

關鍵是簡單:一份 SVG 做主力,一份小 ICO 做相容,一份 Apple Touch Icon 給 iOS,PWA 再加 manifest。不必再維護幾十種尺寸。