當你第一次建立網站,可能會想:如何讓搜尋引擎不要檢索(抓取)某些頁面?例如後台登錄頁、測試頁面、隱私內容或重複內容。這時候,robots.txt 就是你需要的工具。它是一個簡單的文字檔案,放在網站根目錄下,用來告訴搜尋引擎的爬蟲(Spider)哪些頁面可以存取,哪些不要碰。
robots.txt 的存在,源於網際網路早期對爬蟲行為的規範需求。1994 年,Robots Exclusion Protocol(機器人排除協定) 被提出,這是一種非強制性的君子協定。網站管理員透過 robots.txt 檔案向爬蟲發出指令,而主流搜尋引擎(如 Google、Bing、Baidu)會尊重這些規則。雖然它不是法律強制,但幾乎所有正規爬蟲都會遵守,這讓網站擁有了基本的內容控制權。
想像你經營一個電子商務網站,有成千上萬的篩選頁面——按價格、按顏色、按品牌組合生成的 URL。這些頁面對使用者有用,但對搜尋引擎來說是重複內容陷阱,會浪費爬蟲配額(Crawl Budget),甚至影響網站整體收錄品質。透過 robots.txt,你可以屏蔽這些動態參數頁面,讓搜尋引擎把精力集中在核心產品頁和分類頁上。
再比如,網站有個 /admin/ 目錄,是後台管理入口,或者有 /test/ 資料夾用於開發測試。這些內容既不需要被索引,也不希望出現在搜尋結果裡。robots.txt 能快速禁止爬蟲存取這些路徑,避免敏感資訊洩漏或無意義頁面被收錄。
還有一種情況:網站改版或遷移時,舊內容暫時保留在伺服器上,但不想讓搜尋引擎繼續檢索。用 robots.txt 臨時屏蔽這些舊目錄,可以避免新舊內容混亂,保持搜尋結果的整潔。
這個檔案必須放在網站的根目錄,檔案名稱固定為 robots.txt(全小寫),存取位址通常是 https://example.com/robots.txt。搜尋引擎爬蟲在檢索網站前,會先檢查這個檔案,讀取規則後再決定檢索哪些頁面。
檔案內容由簡單的指令組成,核心是 User-agent(指定爬蟲)和 Disallow(禁止檢索的路徑)。例如:
User-agent: *
Disallow: /admin/
Disallow: /test/
Allow: /test/public/
這段規則的意思是:對所有爬蟲(* 代表萬用字元),禁止檢索 /admin/ 和 /test/ 目錄,但允許檢索 /test/public/ 子目錄。規則支援萬用字元和路徑比對,彈性度很高。
你還可以針對特定爬蟲設定規則。比如只想屏蔽百度爬蟲,可以這樣寫:
User-agent: Baiduspider
Disallow: /
這會讓百度爬蟲完全無法檢索網站,而 Google 等其他爬蟲不受影響。
另外,robots.txt 還可以指向 Sitemap(網站地圖),幫助搜尋引擎更有效率地發現頁面:
Sitemap: https://example.com/sitemap.xml
保護隱私和敏感內容是最直接的需求。企業內部文件、會員專屬內容、支付流程頁面,這些不應該出現在公開搜尋結果裡。透過 robots.txt 屏蔽這些路徑,可以降低資訊暴露風險。
優化爬蟲配額是 SEO 專業人員常用的策略。搜尋引擎分配給每個網站的檢索資源有限,尤其是大型網站。如果爬蟲浪費時間在無價值頁面上(如搜尋結果頁、過濾頁、登錄頁),重要內容可能得不到及時檢索。合理使用 robots.txt 可以引導爬蟲優先檢索高品質頁面。
避免重複內容問題也很關鍵。電子商務網站、部落格平台、新聞網站常常產生大量相似或重複的 URL。搜尋引擎可能因此判定網站品質低,影響排名。用 robots.txt 屏蔽這些頁面,能減少索引混亂。
測試環境隔離是開發團隊的需求。網站上線前,測試版本可能已經部署到伺服器,但不希望被搜尋引擎提前收錄。透過 robots.txt 臨時屏蔽測試目錄,等正式上線後再放開。
很多人誤以為 robots.txt 能徹底刪除已收錄的頁面,這是錯誤的。它只能阻止爬蟲繼續檢索,但如果頁面已經被索引,需要結合 noindex 標籤 或 Google Search Console 的刪除工具 才能真正移除。
另一個迷思是以為 robots.txt 能保護機密內容。它只是告訴爬蟲「別來」,但任何人都可以直接存取 robots.txt 檔案,看到你屏蔽的路徑。如果這些路徑本身沒有存取權限控制(如密碼保護),資訊依然可能洩漏。真正的敏感內容必須透過伺服器端權限管理來保護。
此外,並非所有爬蟲都遵守 robots.txt。正規搜尋引擎會尊重規則,但惡意爬蟲、資料採集工具可能完全無視這個檔案。robots.txt 是君子協定,不是防火牆。
如果你是網站管理員或 SEO 從業人員,robots.txt 是必備工具。無論網站大小,合理配置都能提升檢索效率,避免不必要的問題。
如果你是內容創作者或部落格主,可能不需要複雜的 robots.txt 配置,但至少應該了解它的作用。例如屏蔽作者登錄頁、草稿目錄、隱私頁面等。
如果你是電子商務平台或大型網站營運者,robots.txt 幾乎是剛需。面對海量頁面和複雜結構,精細化控制爬蟲行為能顯著改善索引品質和搜尋表現。
配置完 robots.txt 後,務必測試規則是否生效。Google Search Console 提供了 robots.txt 測試工具,可以驗證某個 URL 是否被屏蔽,檢查語法錯誤。Bing Webmaster Tools 也有類似功能。
常見錯誤包括:路徑拼寫錯誤、萬用字元使用不當、規則衝突(Disallow 和 Allow 同時作用於同一路徑)。這些問題可能導致重要頁面被誤屏蔽,或者無效頁面繼續被檢索。
另外,robots.txt 檔案必須是純文字格式,避免用 Word 或富文本編輯器儲存,否則可能引入隱藏字元導致解析失敗。
隨著搜尋引擎技術進化,robots.txt 的作用邊界也在變化。Google 已經明確表示,robots.txt 不能替代 noindex 標籤,後者才是控制索引的正確方式。但 robots.txt 依然是管理爬蟲行為的基礎工具,尤其在處理大規模網站、節省爬蟲資源方面不可替代。
對於普通網站,簡單的 robots.txt 配置就夠用。對於複雜網站,它需要與 Sitemap、Canonical 標籤、noindex 等 SEO 技術配合使用,形成完整的內容管理策略。理解 robots.txt 的原理和侷限,才能真正發揮它的價值,讓搜尋引擎高效檢索你希望展示的內容,同時保護不該公開的部分。