跳至主要內容

    noindex

    noindex 讓頁面不出現在搜尋結果。可用 meta robots 或 X-Robots-Tag header。

    定義

    noindex 是告訴搜尋引擎不要把頁面納入索引的指令。常見做法是 meta robots(<meta name="robots" content="noindex">)或 HTTP header(X-Robots-Tag: noindex)。

    為什麼重要

    • 避免搜尋結果出現低價值或重複頁(例如搜尋頁、測試頁)
    • 避免內容品質信號被稀釋(大量薄內容)
    • 配合 canonical 與 sitemap 管理索引範圍
    • 防止付費/會員限定內容被免費搜尋到
    • 隱藏開發中的頁面或 staging 環境
    • 管理分頁(pagination):避免 /page/2、/page/3 等頁面占用索引配額

    怎麼做(實作重點)

    • 在 HTML head 放 meta robots noindex(或用 X-Robots-Tag)
    • 不要把 noindex URL 放進 sitemap
    • 如果仍需爬取(例如追蹤連結),用 noindex,follow
    • 不要用 robots.txt 阻擋:否則搜尋引擎看不到 noindex 指令
    • 定期檢查 Search Console 的「已排除」報告確認生效
    • 用程式碼邏輯自動加 noindex:例如搜尋結果頁、篩選頁、分頁
    • 測試時用 URL 檢查工具確認爬蟲看到的版本

    範例

    html
    <!-- 基本 noindex -->
    <meta name="robots" content="noindex, follow" />
    
    <!-- 針對特定搜尋引擎 -->
    <meta name="googlebot" content="noindex" />
    <meta name="bingbot" content="noindex" />
    typescript
    // React 動態設定 noindex
    function PageHead({ shouldIndex = true }) {
      return (
        <Helmet>
          <meta
            name="robots"
            content={shouldIndex ? 'index, follow' : 'noindex, follow'}
          />
        </Helmet>
      );
    }
    
    // 使用範例:搜尋結果頁
    <PageHead shouldIndex={false} />

    相關連結

    常見問題

    關於這個詞彙的常見問答。

    回到詞彙表