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} />相關連結
常見問題
關於這個詞彙的常見問答。