meta robots 以及 robots.txt 的工作分別是阻止Google 檢索、索引你的頁面。在現今網路世界中,只有SEO排名高或流量高是沒有用的,流量必須有價值、要能夠產生轉換,所以使用者體驗相對重要,如果你有特定頁面會傷害使用者體驗,你可以透過這些方式去阻止該頁面出現在Google 搜尋結果中。
我們在 Google Search Console 顯示偵測到「Noindex」標記 有介紹noindex的標記,即為meta robots阻止Google索引特定頁面。
meta robots vs. robots.txt
以下以表格介紹兩者的差別:
meta robots | robots.txt | |
功能 | 阻止Google索引在搜尋結果 | 阻止Google抓取資料 |
使用方式 | 在<head>底下加入meta robots標籤,例如noindex | 上傳檔名為robots.txt的檔案到根目錄 |
使用時機 | 特定頁面不希望出現在Google搜尋結果頁中,例如購物車頁、結帳頁、網站搜尋結果頁,但這些頁面可能對SEO有幫助,所以還是會讓Google抓取資料 | 特定頁面完全不希望Google抓取資料,例如未完成頁面、測試頁面、機密頁面 |
- robots.txt可以阻止搜尋引擎檢索你的特定頁面的資料,如果你使用了robots.txt來阻擋搜尋引擎,那麼搜尋引擎將會略過你所阻擋的頁面,不去做檢索。
- 而meta robots 是在索引層面阻止搜尋引擎索引你的頁面,但Google還是有爬你的網站資料。
- 如果只是不想讓網頁顯示在 Google 搜尋結果中,請不要以 robots.txt 做為隱藏網頁的方法。如果有其他網頁的說明文字指向您的網頁,即使 Google 未造訪您的網頁,還是能夠為網頁建立索引。
什麼是robots.txt?
robots.txt是一個檔案,這個檔案會規範來到你的網站的爬蟲的行為,像是有哪些頁面可以爬、哪些頁面不能爬。
robots.txt 檔案能夠告訴搜尋引擎檢索器,可存取網站上的哪些網址。 這個檔案主要用來避免網站因要求過多而超載,而不是讓特定網頁無法出現在 Google 搜尋結果。
Google 特別強調,如要防止自己的網頁顯示在搜尋結果中,請使用其他方法,例如密碼保護或是 noindex 標記。
如需自行建立 robots.txt 檔案,可以參考Google官方 建立 robots.txt 檔案,這裡我們也提供一個簡單的示例。
robots.txt 文件示例
當使用robots.txt文件時,你可以根據你的網站需求和機器人的行為來編寫。以下是一個簡單的robots.txt文件示例,展示如何指示機器人爬取網站:
User-agent: *
Disallow: /admin/
Disallow: /private/
Disallow: /cgi-bin/
Disallow: /temp/
Sitemap: https://www.example.com/sitemap.xml
這個示例中的robots.txt文件有幾個重要的指示:
User-agent: *
:這表示這些指示適用於所有的機器人。你也可以使用特定的機器人名稱,例如User-agent: Googlebot
,以便只針對特定的機器人進行配置。Disallow: /admin/
:這表示機器人不應該爬取網站中的/admin/目錄及其內容。Disallow: /private/
:這表示機器人不應該爬取網站中的/private/目錄及其內容。Disallow: /cgi-bin/
:這表示機器人不應該爬取網站中的/cgi-bin/目錄及其內容。Disallow: /temp/
:這表示機器人不應該爬取網站中的/temp/目錄及其內容。
此外,這個示例還包含了一個可選的指示:
Sitemap: https://www.example.com/sitemap.xml
:這表示網站的Sitemap文件位於 https://www.example.com/sitemap.xml,機器人可以參考該文件以更好地理解網站的結構和內容。
請注意,robots.txt文件只是一種建議,有些機器人可能不遵守這些指示。同時,重要的內容不應僅依賴robots.txt文件的限制,必要時應使用其他安全措施。建議在編寫robots.txt文件之前,仔細閱讀官方的robots.txt文件規範和相關的最佳實踐。
robots.txt 的使用時機
最一開始提到 robots.txt 是一種規範,他會告訴你來到你的網站的爬蟲有哪些頁面可以爬、哪些不能爬,所以robots.txt至少有以下幾種的使用時機
- 不讓爬蟲爬機密檔案
- 不讓爬蟲爬未完成的頁面或測試頁面
- 不讓爬蟲爬一些相對不重要的內容,避免消耗抓取預算
- 不讓不必要的爬蟲爬取你的網站,消耗網站資源
meta robots 與 robots.txt 的常見問題
在撰寫關於「Meta Robots 與 Robots.Txt」的文章時,以下是一些常見問題,你可以參考:
- 什麼是 meta robots 和 robots.txt 文件?
meta robots 是一種HTML標籤,用於控制搜索引擎機器人的行為,而 robots.txt 是一個文本文件,用於指示搜索引擎機器人應該如何爬取網站的內容。 - meta robots 和 robots.txt 有何不同?
meta robots是指示單個網頁的機器人指令,而robots.txt是一個網站級別的指令文件。meta robots通常用於單個網頁上,而robots.txt適用於整個網站。 - 如何使用 meta robots 來控制搜索引擎機器人?
使用 noindex 指令可以阻止搜索引擎索引特定頁面,使用 nofollow 可以阻止搜索引擎跟隨頁面上的連結。 - 常見的 meta robots 和 robots.txt 配置錯誤有哪些?
忘記在HTML頁面中添加 meta robots 標籤或忘記編寫 robots.txt 文件等。 - 如何測試 meta robots 和 robots.txt 配置的有效性?
使用網站地圖測試工具或搜索引擎的 Webmaster 工具,來檢查搜索引擎機器人對網站的行為。
結論
若某些頁面你不希望在搜尋引擎被搜尋到,但這些頁面事實上有很多對SEO排名有加分的因素,例如有反向連結、流量,所以你會希望Google檢索這些頁面的資料,但別建立進搜尋引擎索引,這時候你需要 meta robots 來阻止Google索引你的頁面(noindex)。
而未完成或是正在測試的頁面,對實質SEO沒有任何幫助,希望Google不要爬取資料的話就要使用robots.txt。
需特別注意的是:
如果其他網站連結到 robots.txt 所封鎖的網頁,系統仍然可以為該網頁建立索引。雖然 Google 不會對 robots.txt 所封鎖的內容進行檢索或建立索引,但如果我們透過網路上其他網頁的連結發現封鎖的網址,仍然會建立這些網址的索引。在這種情況下,網頁網址或者網頁連結中的錨定文字這類公開資訊,仍會顯示在 Google 搜尋結果中。如要完全避免這種情形,建議使用密碼保護伺服器上的檔案、使用 noindex,或是完全移除網頁。
資料來源:
延伸閱讀: