中繼資料 (meta) robots 標籤是一種 HTML 元素或 HTTP 回應標頭,用來告訴爬蟲哪些索引、連結追蹤和摘要規則適用於特定頁面或資源,而 Meta Robots 產生器 會根據一組經過驗證的選擇同時產生這兩種形式,且不會產生互相矛盾的組合。「metal robot」這個詞是「meta robot」的諧音雙胞胎:搜尋「metal robot」怎麼做的使用者經常會來到這裡,想找的是規範搜尋引擎如何處理 URL 的 meta robots 標籤。這個標籤本身並不會驗證內容或封鎖堅決的訪客,也無法強制爬蟲遵守,但它是一個 Google 有正式文件說明的標準化管道,可用於要求移除索引、限制摘要長度,以及在個別頁面上控制預覽。本文接下來會說明這些控制項實際的意義、要選擇哪種格式,以及如何產生並部署搜尋引擎下次檢索時會讀取的標記或標頭。

Meta Robots 標籤實際上做的是什麼
meta robots 標籤是一個針對特定 URL 的指令,鎖定特定爬蟲,並帶有一個或多個描述該頁面在搜尋結果中應如何被處理的指令。Google 的官方文件列出本產生器所支援的指令:noindex、nofollow、nosnippet、max-snippet、max-image-preview、max-video-preview、notranslate、noimageindex、indexifembedded,全部掛在一個 HTML <meta> 元素的 name 屬性上,值可以是 robots、googlebot 或 googlebot-news。根據 Google 的 robots meta 標籤規格,這些是爬蟲指令而非存取控制:任何知道該 URL 的人仍然可以要求取得內容,而忽略此規則的爬蟲仍可能處理該內容。敏感資料必須透過真正的身分驗證來保護,而不是依賴一個中繼資料標籤。
在這個簡單介面的背後,其實潛藏著少數幾個會導致大部分實際部署問題的相依性。Noindex 要求從搜尋結果中移除。Nofollow 要求不要追蹤頁面上的連結。Nosnippet 要求 Google 不要顯示文字摘要或影片預覽;Google 也說明這會使頁面內容無法被當成 AI 概覽 (AI Overviews) 和 AI 模式的直接輸入,但靜態縮圖仍然可能出現。Max-snippet 則以字元數限制文字摘要的長度,可接受 -1 (讓 Google 自選有效長度) 或非負整數,0 在文件中視為等同於不顯示摘要。Max-video-preview 單位是秒,0 表示最多只能有一張靜態圖片,-1 則移除時長上限。Max-image-preview 只能是文件規定的三個值之一:none、standard 或 large。當發布者透過結構化資料、AMP 關聯或授權給予特定權限時,上述每一個限制都可能會被覆寫,因此產生出來的字串並不是一個通用的內容使用開關。
Meta Robots vs. X-Robots-Tag:兩者各自適用在哪裡
同一組指令可以寫成嵌在頁面 <head> 裡的 HTML <meta> 元素,也可以寫成由伺服器送出的 X-Robots-Tag HTTP 回應標頭。選錯形式是標籤看起來毫無作用最常見的原因,因此下表整理出兩種形式各自應該出現的位置,以及部署環境需要滿足的條件。
| 面向 | HTML <meta> 元素 | X-Robots-Tag HTTP 標頭 |
|---|---|---|
| 最適用於 | 您能控制標記的 HTML 頁面 | PDF、圖片、影片及其他非 HTML 資源 |
| 由誰設定 | CMS 佈景、主題檔案或 HTML 編輯器 | 網頁伺服器、應用程式、反向代理伺服器或 CDN |
| 爬蟲目標語法 | name="robots"、name="googlebot" 或 name="googlebot-news" | 標頭值以 user-agent 代號 (googlebot 或 googlebot-news) 開頭,後接指令 |
| 傳輸位置 | 隨爬蟲擷取的頁面主體一起送出 | 隨回應標頭送出,位於主體之前 |
| 常見失敗模式 | 放到 <body> 而非 <head> | 貼到頁面內容裡而完全沒作用 |
| 檢索存取的必要條件 | robots.txt 不得封鎖該 URL | robots.txt 不得封鎖該 URL |
因為同一套邏輯會驅動兩種形式,所以產生器會平行輸出。一般性的 robots 目標會輸出一個 name 為 robots 的 meta 元素,以及一個沒有前綴的 X-Robots-Tag 標頭。Google 專屬的目標則使用 googlebot 或 googlebot-news 作為 meta 的 name,並在 HTTP 標頭的值中以該 user agent 作為前綴,與 Google 為其文字和新聞結果所記載的兩個代號一致。其他爬蟲名稱和各廠商特有的行為則不在這個精簡介面的範圍內。
如何使用產生器建立 Meta Robots 標籤
- 選擇爬蟲目標。針對不限定對象的 robots 規則請選一般搜尋爬蟲;針對文字結果請選 Googlebot;若要使用新聞專屬的代號,則選 Googlebot News。這個選擇會決定 meta 的 name 屬性,以及 HTTP 標頭是否帶有 user-agent 前綴。
- 只勾選符合資源政策的索引、追蹤與預覽限制。請只在頁面真的需要某項控制時,才去切換 noindex、nofollow、nosnippet、數值型的 max-snippet 與 max-video-preview、max-image-preview 設定 (none、standard、large)、notranslate、noimageindex 和 indexifembedded。
- 產生並複製輸出。產生器會將相同內容序列化為適合用於頁面標記的 HTML <meta> 元素,以及適合用於伺服器設定的等價 X-Robots-Tag HTTP 標頭。整個產生過程都在瀏覽器中執行,因此可以在不連線任何搜尋服務的情況下直接複製輸出。
- 依資源類型部署對應的形式。將 meta 元素貼到您能控制的 HTML 頁面 <head> 中。對於 PDF、圖片、影片,或任何以標頭作為控制管道的部署,請在網頁伺服器、應用程式、反向代理伺服器或 CDN 上設定 X-Robots-Tag 標頭。把標頭文字貼到頁面內容中是沒有任何效果的。
- 在公開來源與回應標頭中驗證。以目標爬蟲能夠存取的方式擷取公開 URL,檢查所送出的 HTML 中是否含有 meta 元素,並檢查回應標頭中是否含有該標頭。確認沒有來自 CMS、SEO 外掛、反向代理伺服器或 CDN 的矛盾宣告,避免較嚴格的規則勝出而造成誤解。
- 留時間讓爬蟲重新檢索。搜尋引擎會依照自己的檢索時程處理變更,其他搜尋引擎對 Google 專屬指令的解讀也可能不同。產生器只負責產生正確的語法,無法保證一定會被移除索引、處理時程或呈現出特定結果。
產生器為了避免矛盾而強制執行的規則
這個工具會拒絕輸出那些會被 Google 靜悄悄忽略、或讓人誤以為一切正常的組合。了解這些規則能幫助您挑選正確的選項,而不是納悶為什麼某個核取方塊無法儲存。
| 衝突或相依性 | 產生器的處理方式 | 為何重要 |
|---|---|---|
| nosnippet 與 max-snippet 並存 | 拒絕同時輸出 | nosnippet 較為嚴格;在它底下的數字摘要長度會造成誤導 |
| indexifembedded 沒有搭配 noindex | 在沒有同時勾選 noindex 之前拒絕輸出 | Google 文件中 indexifembedded 只有在搭配 noindex 時才有效 |
| max-snippet 的值 | 只接受 -1 或非負整數 | 0 等同於不顯示摘要;-1 讓 Google 自選有效長度 |
| max-video-preview 的值 | 只接受 -1 以上到 -1 的整數 | 0 至多允許一張靜態圖片;小於 -1 的值會被拒絕,避免複製到一條 Google 會忽略的規則中 |
| max-image-preview 的值 | 只接受 none、standard、large | 這是 Google 文件記載的設定值;任意字串會被忽略 |
| noarchive 核取方塊 | 刻意省略 | Google 將 noarchive 列為歷史性且不再使用的指令,因為其快取連結功能已不存在 |
| unavailable_after 欄位 | 刻意省略 | 正確的日期時間格式、時區與發布流程需要比一個小型通用表單所能推測的更多資訊 |
八個有來源依據的測試案例涵蓋放行輸出、noindex、noindex 與 nofollow 並用、nosnippet、20 字元的文字摘要上限、large 圖片預覽、無上限影片預覽,以及翻譯與圖片控制項的組合。負面測試則涵蓋沒有 noindex 的 indexifembedded、nosnippet 搭配數字摘要上限、格式錯誤的數字,以及低於文件規定最小值的數字。知道這些測試案例存在,可以讓您確認行為變更並未讓您實際部署的輸出產生迴歸。
部署標籤而不製造衝突
Google 對於來自多個 meta 標籤、HTTP 標頭或爬蟲專屬宣告之間互相衝突的規則,會以結合限制的方式解讀,並套用較嚴格的規則。CMS、SEO 外掛、反向代理伺服器和 CDN 各自都可能注入自己的指令,因此在假設頁面「已經乾淨」之前,請檢查實際送出的 HTML 和實際的回應標頭,而不只看編輯器中的設定。在同一個 URL 上從一般性的 robots 目標切換到 Google 專屬的 googlebot 目標時也是如此:產生器只會輸出您所選擇的內容,因此任何來自其他地方的、針對特定爬蟲的額外規則,都會與之結合並生效。
檢索存取是另一個獨立層級,必須在任何指令生效之前先解決。爬蟲必須能夠擷取資源,才能讀取這兩種形式的任何一個。如果 robots.txt 禁止檢索,Google 可能永遠看不到 noindex 指令,而該 URL 仍可能因為外部連結而存在,卻沒有被處理其頁面內容。若要從結果中移除一個可存取的頁面,請允許檢索並持續提供該指令,直到搜尋引擎處理完成。若需要關於存取控制檔案本身的實務操作說明,請參閱關於 建立 robots.txt 檔案 的指南,其中涵蓋的是決定哪些爬蟲能夠一開始接觸到內容的配套檔案。
Limits and Caveats to Know Before You Publish
The meta robots tag is a request, not a guarantee. Google may apply additional signals, such as structured-data permissions, AMP relationships, or licensing grants, that supersede a generated limit; a static image thumbnail may still appear under nosnippet; and other search engines may interpret Google-specific tokens differently. The HTTP header must be configured by the web server, application, or CDN, so any deployment that lacks header control should use the HTML form on an HTML page rather than paste header syntax into the body.
If the goal is to remove a page from search results, expect a delay. Search engines process changes on their own crawl schedule, and the generator produces exact syntax only; it cannot guarantee deindexing, timing, or a particular search-result presentation. After deployment, fetch the public URL as the intended crawler can access it, inspect the source or response headers, and confirm there is no contradictory declaration until recrawling occurs. Once the URL has been recrawled and processed, the directive stays in effect for as long as the page continues to serve it.
Related reading: How to Get a Meta Tag Block (Without the SEO Bloat).