ADBest 部落格

  • Home
  • ADBest 部落格
  • Robots.txt新手教學包:搞懂用途、語法實例,3步驟完整拆解!

Robots.txt新手教學包:搞懂用途、語法實例,3步驟完整拆解!

Robots.txt新手教學包:搞懂用途、語法實例,3步驟完整拆解!
robots.txt是幫助搜尋引擎釐清網站結構的工具。本文將說明robots.txt對SEO的重要性,並教會你如何設定、提醒常見錯誤,再分享5種網站的設定建議及4種測試方法,幫助你限制搜尋引擎爬蟲,提升網站收錄效率!

Robots.txt 是什麼?分享 robots.txt 的 3 大重要性!

robots.txt 是一個文字檔案,用來告訴搜尋引擎爬蟲「哪些頁面可以看、哪些不能看」。

這個檔案的名稱必須是全小寫的 robots.txt,不能寫成 Robots.txt 或 ROBOTS.TXT,因為伺服器對大小寫是有區分的,錯誤的名稱會導致搜尋引擎無法讀取。

如果網站沒有設定 robots.txt,搜尋引擎預設會認為整個網站的所有頁面都可以自由爬取;若有設定,則會根據你的規則爬取頁面。

robots.txt 就像告示牌,只是該怎麼做但是沒有實質保護力

所以 robots.txt 並不是必須的設定,而是一種管理爬蟲的工具,幫助網站更有條理地分配抓取資源。

robots.txt 就像你家門口的告示牌,寫著「訪客請走大門,後門不開放」,但問題是——這只是個提醒告示,並沒有真正的鎖門功能。

因此 robots.txt 主要是給像 Googlebot 這類的善意爬蟲看的,但壞心眼的爬蟲就不一定會遵守規則,甚至可能故意去看你不想讓它看的東西。

(一)為什麼 robots.txt 重要?

其實 robots.txt 不是拿來「阻止」搜尋引擎收錄所有內容,而是告示哪些東西該被看,哪些不該被爬取。

以下是三個常見原因:

📝 原因 1:網站後台不需要曝光

你的網站後台(像是 /admin/ /login/)是給管理員用的,不需要開放所有人都能看見,當然不用出現被爬蟲給爬取。

📝 原因 2:某些資料夾根本沒用

網站裡可能有些技術性的檔案、程式碼,或臨時檔案(像 /tmp/、/scripts/),對搜尋引擎來說沒意義,反會佔用爬蟲抓取預算,導致真正重要的頁面沒被優先收錄。

📝 原因 3:測試網站不該被搜尋引擎發現

有時候網站會有一個測試版,例如 test.example.com,是開發人員用來試驗新功能的地方,裡面的內容可能是假的或還沒調整好。

如果搜尋引擎不小心把這些內容收錄進去,不只影響正式網站的 SEO,還可能讓使用者誤闖測試網站,看到錯誤的資訊造成混亂。

(二)robots.txt vs. meta robots:主要差異

除了 robots.txt,還有另一種與搜尋引擎溝通的方式,那就是 meta robots。

📝 meta robots 是什麼?

meta robots 是一段放在網頁內的 HTML 標籤,用來告訴搜尋引擎「這個頁面能不能被收錄?能不能跟別的網站的連結傳遞權重?」

meta robots 的語法舉例:
<meta name=”robots” content=”noindex, nofollow”>

📝 什麼時候會用 meta robots?

  • 不希望特定頁面出現在搜尋結果(像隱私政策、感謝頁、重複內容)
  • 不想讓搜尋引擎追蹤某些連結(例如付費廣告、會員登入按鈕)
  • 不想讓搜尋引擎建立快取頁(像頁面更新很快,不想讓使用者看到過期內容時)

📝 robots.txt vs. meta robots 差異比較

robots.txt vs. meta robots 比較表格
robots.txtmeta robots
位置放在網站根目錄下放在網頁內
檔案類型一個獨立的文字檔案使用 <meta> HTML 標籤設定
主要功能告訴搜尋引擎「不要來爬這個頁面」告訴搜尋引擎「即使你爬到了,也不要收錄」
影響範圍影響整個網站或特定目錄只影響單一頁面

簡單來說:

  • robots.txt 是一開始就告訴爬蟲「不要來」,但並沒有實質阻擋能力。
  • meta robots 則是讓搜尋引擎「就算爬到了,也不要放進搜尋結果裡」。

Robots.txt 運作指南!新手必看的運作 3 步驟+4 個組成元素!

爬蟲讀取 robots.txt 的過程大約可以分為三個階段:

robots.txt 運作 3 步驟:爬蟲來訪、讀取規則、決定爬取內容

🔹 Step.1:爬蟲來訪

當搜尋引擎的爬蟲來到你的網站時,第一件事是先檢查 robots.txt,它會去確認檔案裡有沒有對它的指引。

🔹 Step.2:讀取規則

爬蟲會根據 robots.txt 裡的內容,決定哪些頁面可以爬、哪些不能收錄。

例如:

User-agent: *Disallow: /blog/Allow: /blog/popular-post.htmlSitemap: https://www.example.com/sitemap.xml

這份  robots.txt  表示所有爬蟲都不能進入 /blog/ 這個資料夾;但 /blog/popular-post.html 這一頁可以例外。

以及提供一份地圖(Sitemap),請爬蟲按照這張地圖去爬取。

在接下來的段落,我們也會一一解釋組成 robots.txt 的元素。

🔹 Step.3:決定爬取內容

如果 robots.txt 允許爬取,爬蟲就會開始收集網站內容,並加入搜尋索引。

如果 robots.txt 說「不行」,守規矩的爬蟲就會跳過那些頁面。

(一)什麼是 User-agent?

User-agent 這個指令指明規則適用哪些爬蟲,也就是「這條規則是給誰看的」。

每個搜尋引擎的爬蟲都有自己的「名字」,像 Googlebot(Google 的爬蟲)、Bingbot(Bing 的爬蟲)、Baiduspider(百度的爬蟲)等。

網站可以針對不同的爬蟲設定不同的規則,決定哪些內容誰可以爬。

📝 User-agent:針對所有爬蟲的情況

User-agent: *Disallow: /private/

這段 robots.txt 內容:意思就是:「所有的爬蟲(* 表示全部),請不要爬 /private/ 這個資料夾。」這樣任何爬蟲看到這個規則時,理論上都會遵守,不會去爬取。

📝 User-agent:針對特定爬蟲

有時候,你可能希望 Google 能看某些內容,但 Bing 不能看,那該怎麼辦?

這時候,你可以針對特定爬蟲寫不同的 User-agent 設定,像這樣:

User-agent: GooglebotDisallow: /no-google/
User-agent: BingbotDisallow: /no-bing/

這樣設定後,Googlebot 就不能爬 /no-google/,Bingbot 不能爬 /no-bing/,而其他爬蟲則不受影響。

📝 User-agent:常見的搜尋引擎爬蟲名稱

常見的搜尋引擎爬蟲名稱(User-agent)
User-agent 名稱作用
GooglebotGoogle 的主要爬蟲,負責一般網站索引
Googlebot-ImageGoogle 專門用來抓取圖片的爬蟲
Googlebot-VideoGoogle 影片搜尋專用的爬蟲
Googlebot-MobileGoogle 用來爬行手機版網站的爬蟲
AdsBot-GoogleGoogle Ads 用來檢查廣告目標頁面的爬蟲
BingbotBing(微軟搜尋引擎)的主要爬蟲
SlurpYahoo 搜尋的爬蟲,負責網站索引
Baiduspider百度的主要網站爬蟲
YandexBotYandex (俄羅斯搜尋引擎)的主要網站爬蟲
ApplebotApple 搜尋引擎(Siri、Spotlight)用的爬蟲
FacebotFacebook 用來抓取連結內容的爬蟲

(二)什麼是 Disallow、Allow?

📝 Disallow 是什麼?

Disallow 就是告訴爬蟲「這些頁面不要來爬取」的指令。

舉個例子,假設你的 robots.txt 這樣寫:

User-agent: *Disallow: /admin/Disallow: /private/

代表 /admin/ 以及 /private/ 兩個資料夾不允許被爬取。

📝 Allow 是什麼?

Allow 則是告訴爬蟲「這些頁面可以爬」的指令。

常用在「某個資料夾不給爬,但裡面有部分頁面可以爬」的情況。

舉個例子,假設你的 robots.txt 這樣寫:

User-agent: *Disallow: /private/Allow: /private/public-info.html

這表示整個 /private/ 資料夾都不給爬,但是 /private/public-info.html 這一頁例外,可以讓爬蟲看得到。

📝 Disallow、Allow 常見使用舉例

  • 阻擋整個網站:如果你希望完全禁止搜尋引擎爬取你的網站

User-agent: *Disallow: /

  • 允許爬取所有內容:如果你希望搜尋引擎可以爬取整個網站,不做任何限制

User-agent: *Disallow: 

  • 阻擋特定檔案類型:網站上特定檔案(例如 PDF、圖片、影片等)不希望被搜尋引擎索引
User-agent: *Disallow: /*.pdfDisallow: /*.jpgDisallow: /*.mp4

User-agent: *Disallow: /*?*

(三)什麼是 Sitemap 指令?

1.讓搜尋引擎更快找到頁面

2.即使某些頁面沒有內部連結,爬蟲還是可以找到

3.不會影響 robots.txt 設定的「禁止爬取」規則

Robots.txt 語法教學+設定示範!5 種網站類型設定全攻略!

(一)robots.txt 的基本語法與格式

從上個段落中,我們說明了組成 robots.txt 的元素該如何使用,接著我們將解釋 robots.txt 的基本語法與格式:

  1. User-agent:這條規則是給誰看的?
  1. 設定爬蟲規則:分開管理不同的爬蟲
  1. Disallow:這裡不准進入!
  1. Allow:這裡可以進!
  1. Sitemap:來來來,這裡有地圖給你!

除了這五點組成之外,我們還可以額外加上「Crawl-delay」指令,告訴爬蟲每次請求之間要間隔多少秒數,以免網站負擔過重。

  1. Crawl-delay:你下次來訪時間,請至少間隔多久再來!

💡小提醒

(二)robots.txt 範例

綜合剛剛學到的語法,舉例一個完整的 robots.txt :

# robots.txt for https://adbest.com.tw/
# 針對所有爬蟲的基本規則User-agent: *Disallow: /admin/Disallow: /private/Allow: /private/public-info.htmlSitemap: https://www.example.com/sitemap.xml
# 針對 Googlebot 設定User-agent: GooglebotDisallow: /test-pages/Allow: /test-pages/google-only.html
# 針對 Bingbot 設定User-agent: BingbotDisallow: /*.pdfCrawl-delay: 5
Sitemap: https://adbest.com.tw/sitemap.xml

🔎 通用規則(適用所有爬蟲):

  • 禁止爬取 /admin/ /private/
  • 但允許 /private/public-info.html 這頁例外開放
  • 提供 Sitemap 讓爬蟲加速找到重要內容

🔎 針對 Googlebot 的特別規則:

  • Disallow: /test-pages/ 👉 Googlebot 不能爬取 /test-pages/
  • Allow: /test-pages/google-only.html 👉 Googlebot 可以爬取這份檔案

🔎 針對 Bingbot 的特別規則:

  • Disallow: /*.pdf 👉 整個網站內 pdf 類型的檔案都不讓 Bingbot 爬取

Crawl-delay: 5 👉 Bingbot 每次請求之間必須間隔 5 秒,減少伺服器負擔

這份 robots.txt 範例的設定方式可以作為通用模板參考,但不同類型的網站會有不同的需求,因此需要根據你的網站特性、SEO 目標、伺服器負載調整。

以下根據五種不同的網站類型,提供常見的設定建議:

✅ 種類 1:企業官網 robots.txt 建議

  • 適合用來擋掉 /admin/(後台)、/private/(內部文件)。
  • Sitemap 讓搜尋引擎知道應該爬哪些重要頁面。

✅ 種類 2:部落格 robots.txt 建議

  • 可以擋掉 /drafts/ /test-pages/,避免未完成的文章被收錄。
  • 可以針對 Googlebot 設定 Allow,讓特定測試文章能夠被索引。

✅ 種類 3:電商網站 robots.txt 建議

  • 可能需要額外擋住 /cart/、/checkout/、/user-account/,以免這些頁面出現在搜尋結果中。
  • 允許產品頁被爬取,但禁止過多篩選條件的動態網址。

✅ 種類 4:會員制網站 robots.txt 建議

  • 應該擋住會員專區 /members/、/dashboard/,防止搜尋引擎存取私人內容。
  • 但如果有部分內容希望讓 Googlebot 爬取(例如開放預覽的會員專區),可以加 Allow

✅ 種類 5:新聞網站 robots.txt 建議

  • Crawl-delay 可以加進高流量的新聞網站的 robots.txt,減少伺服器負擔。
  • 可能會針對 Googlebot 設定特定規則,讓它優先爬取即時新聞內容。

(三)robots.txt 位置與存取方式

📝 robots.txt 位置

robots.txt 的位置應該放在網站的根目錄,網址必須是:

https://www.你的網站/robots.txt

如果放錯位置,搜尋引擎爬蟲不會讀取。

📝 robots.txt 存取方式

robots.txt 的存取方式很簡單,只要在瀏覽器或任何工具裡輸入:

https://想存取的網站.com/robots.txt

就能直接看見 robots.txt 檔案的內容,我們也可以用這種方式檢查你的 robots.txt 設定狀態。

(在後面的段落,我們也會詳細介紹四種測試方法)

Apple 官網實際 robots.txt 長相

有趣的是,許多品牌會在 robots.txt 裡加上彩蛋,讓品牌形象不只出現在頁面上,連技術層面也充滿風格。

robots.txt 的彩蛋內容並不會影響網站運作,但對於喜歡挖寶、愛觀察網站細節的人來說,加上彩蛋就像不經意的小驚喜,讓人會心一笑。

Nike在 robots.txt上直接放上品牌logo
cloudflare在robots.txt向機器人喊話「be nice」展現玩味

Robots.txt 影響 SEO?加上 robots.txt 一舉提升收錄效率!

(一)如何利用 robots.txt 提升網站收錄與排名?

在 robots.txt 中可以結合 Sitemap,加速搜尋引擎收錄速度。

因為即使你有很棒的內容,搜尋引擎還是可能需要一些時間才能找到並索引你的頁面。

我們可以在 robots.txt 中加入 Sitemap 指令,那麼:

  • Googlebot 會優先根據 Sitemap 爬取你的重要頁面
  • 減少爬蟲迷路的機會,提升索引速度!

(二)避免爬蟲浪費資源,提高網站效率

搜尋引擎爬蟲不會無限爬取你的網站,它們有「爬取預算」,所以要讓它把時間花在重要的頁面上,而不是那些不需要曝光的頁面。

若是提供 robots.txt 讓爬蟲馬上知道哪些地方可以爬取,讓搜尋引擎在處理網站內容時可以更有效率,不用花時間篩選無用資訊。

建議用 robots.txt 擋掉不必要的內容,讓爬蟲專注有價值的頁面,如此一來:

  • Googlebot 不會浪費時間爬購物車、後台、內部搜尋結果等不重要的頁面。
  • 有更多爬取資源分配給重要的產品頁、部落格文章,提升收錄機會!

(三)避免重複內容影響 SEO 表現

有些網站的某些頁面會有「相同內容但不同網址」的情況,像是電商中不同的商品尺寸、埋入追蹤碼的活動頁等。

如果 Google 爬取這些相同的內容,很可能會影響網站的 SEO 排名,因為搜尋引擎不喜歡「重複內容」。

如果這些頁面仍有存在價值,也可以使用 「canonical」標籤,把 Google 明確「指引」到主要頁面,表明哪一頁面是原始內容來源,集中權重、保護你的 SEO 成效。

(四)企業網站與電商網站如何正確設定 robots.txt?

企業網站關心品牌曝光與索引效率;而電商網站則不需要爬取購物車、商品篩選條件等無用頁面,讓 SEO 佈局最佳化。

📝 企業網站 robots.txt 範例

User-agent: *Disallow: /admin/  # 禁止爬取後台Disallow: /login/  # 禁止爬取登入頁面Disallow: /tmp/    # 禁止爬取暫存檔案Disallow: /test/   # 禁止爬取測試頁面Disallow: /private/  # 禁止內部文件
Sitemap: https://www.example.com/sitemap.xml

🔹 企業網站設定重點

  • 擋住無用、內部頁面(後台、測試區),減少搜尋引擎爬取不必要的內容
  • 允許所有搜尋引擎爬行其他內容,確保企業品牌曝光
  • 加入 Sitemap,讓 Google 更快找到重要頁面

📝 電商網站 robots.txt 範例

User-agent: *Disallow: /cart/       # 禁止爬取購物車Disallow: /checkout/   # 禁止爬取結帳頁面Disallow: /account/    # 禁止爬取會員中心Disallow: /admin/      # 禁止爬取後台Disallow: /search/     # 禁止內部搜尋結果頁Disallow: /*?sessionid=Disallow: /*?filter=Disallow: /*?sort=
Allow: /products/Allow: /categories/Allow: /blog/
Sitemap: https://www.example.com/sitemap.xml

🔹 電商網站設定重點

  • 擋住不該被收錄的頁面(購物車、結帳頁面、會員區),讓 SEO 資源集中在有價值的頁面
  • 避免重複內容問題,阻擋帶有 sessionid、filter、sort 參數的網址,防止搜尋引擎收錄不同篩選條件的相似頁面
  • 確保產品頁、分類頁、部落格文章可以被收錄,提升商品曝光率
  • 加入 Sitemap,加快商品頁被 Google 索引

💡小提醒

如果你是使用 91APP、Cyberbiz、Shopline 這類電商系統,要注意平台不一定能自由設定 robots.txt。

首先可以確認電商系統有沒有 robots.txt 設定功能,若是平台不支援,也可以評估使用 meta robots 標籤(例如設定 noindex、nofollow),阻擋搜尋引擎收錄特定頁面!

像是產品頁,有時候平台會預設支援 meta robots,但若是部落格文章、活動頁的內容型頁面,就不一定能手動加入,因為平台通常不開放修改 <head> 區塊,甚至找不到可以插入標籤的位置。

這時你還可以:

  • 直接尋問平台客服能不能「封鎖特定頁面索引」、或請他們技術協助。
  • 利用 canonical 標籤(若平台有支援),引導集中權重到主要頁面。

4 個方法檢查 robots txt!Google Search Console 測試流程一次看!

(一)robots.txt 測試工具

1️⃣ 測試方法:直接在瀏覽器輸入想測試的網址

最簡單的方法就是輸入網址手動打開 robots.txt,看看內容是否正確。

如果 robots.txt 存在,會直接顯示出設定的內容;如果顯示 404 Not Found,代表這個檔案不存在,需要重新確認放置的位置!

2️⃣ 測試方法:使用 Chrome 擴充功能測試

想要快速檢查多個網站的爬取規則,可以安裝 Chrome 擴充功能測試 robots.txt,例如:

3️⃣ 測試方法:透過「爬蟲模擬工具」測試

如果你想更全面地測試整個網站,可以用專業 SEO 工具模擬爬蟲行為,像是:

4️⃣ 測試方法:Google Search Console

Google Search Console(GSC)是 Google 官方提供的工具,能讓你直接測試 robots.txt 是否有擋住該擋的頁面。

接下來我們將介紹 Google Search Console 的測試流程!

(二)Google Search Console(GSC)測試工具流程

  • Step.1:進入 Google Search Console(GSC),找到左側欄位的「設定」
  • Step.2:點擊進入檢索中的「robots.txt」
利用Google Search Console檢查robots.txt 狀態
  • Step.3:在面頁中確認你設定的 robots.txt 狀態是否正確
robots.txt 狀態正常的話GSC會顯示「已截取」

除了已擷取的正常狀態外,其他可能出現的顯示包括:

  • 未擷取 – 找不到 (404)
  • 未擷取 – 其他原因

Robots.txt 進階技巧!讓爬蟲乖乖聽話,保護隱私資料!

(一)如何封鎖特定爬蟲(如壞爬蟲、惡意爬蟲)?

因為 robots.txt 只是「建議」爬蟲怎麼做,但如果真的要阻擋壞爬蟲存取,更有效的做法是使用 .htaccess(Apache)、Nginx 設定或 Cloudflare 來封鎖惡意 User-agent。

🚧 使用 .htaccess 封鎖特定 User-agent(適用 Apache 伺服器)

在 Apache 伺服器使用 .htaccess的設定會直接拒絕惡意爬蟲訪問,比 robots.txt 更有效:

RewriteEngine OnRewriteCond %{HTTP_USER_AGENT} ^BadBot [NC,OR]RewriteCond %{HTTP_USER_AGENT} ^EvilScraper [NC]RewriteRule .* – [F,L]

🚧 在 Nginx 伺服器封鎖惡意爬蟲

如果你的網站使用 Nginx,可以這樣設定:

if ($http_user_agent ~* (BadBot|EvilScraper) ) {    return 403;}

🚧 使用 Cloudflare 防火牆

如果你使用 Cloudflare,可以在防火牆規則(Firewall Rules) 裡設定「封鎖特定 User-agent」:

  • Step.2:點選 「安全性」 > 「WAF」
  • Step.3:建立新的防火牆規則

條件(Condition):User-Agent 包含 BadBot EvilScraper

行動(Action):Block(封鎖)或 Challenge(驗證)

(二)如何設定 robots.txt 來保護敏感資料?

robots.txt 不是一個安全機制,但它可以用來減少搜尋引擎爬取敏感資料(像隱私資料)的機會。

如果想防止自己的網頁出現在搜尋結果,建議使用 meta robots noindex 指令,或加上密碼保護網頁安全。

Robots.txt 只是 SEO 的開始!ADBest 提供完整方案,讓網站排名穩步上升!

robots.txt 設定錯誤,可能會影響網站的 SEO 收錄與排名,甚至讓 Google 忽略你的重要頁面!

讓該擋的頁面沒擋好,搜尋引擎又可能抓到重複內容、內部搜尋結果,影響網站品質…

🚀 別讓 SEO 問題影響你的業績!ADBest 幫你解決!

ADBest 提供專業 SEO 優化服務,不只是設定 robots.txt,還會全面檢查你的網站 SEO,讓搜尋引擎能正確爬取、索引、排名!

不論你是企業官網還是電商網站,ADBest 都能提供量身訂製的 SEO 優化方案,讓你的網站被 Google 喜歡,更被客戶看見! 


如果你的網站沒有在搜尋結果中出現,你不只流失大量的客戶,競爭對手也正在用 SEO 蠶食你的訂單!

想透過 SEO 增加業績嗎?立即聯繫 ADBest!

讓品牌網站出主動出現在受眾眼前

延伸閱讀

返回頂端