[SEO] 開發人員必懂的 SEO 第二集 - robots meta
今天會筆記 4-3 的內容,robots meta。
設定網頁的 robots meta 與 robots.txt
robots meta 與 robots.txt 主要的目的是讓 搜索引擎應該如何處理網頁 ,例如是否要索引網頁。 這個設定雖然只是宣告性質,但是大多數的搜尋引擎會依照宣告的方式進行動作。
設定 robots meta
robots meta 宣告放置於 <head> </head>
中間,如下範例1
2
3<head>
<META NAME="屬性值#1" CONTENT="屬性值#2">
</head>
屬性值#1 指定搜尋引擎
屬性值#1 | 說明 |
---|---|
robots | 所有搜尋引擎的爬蟲程式 |
googlebot | Google 的爬蟲程式 |
googlebot-mobile | Google 行動的爬蟲程式 |
googlebot-news | Google 新聞的爬蟲程式 |
googlebot-image | Google 圖片的爬蟲程式 |
googlebot-video | Google 視訊的爬蟲程式 |
bingbot | Bing 的爬蟲程式 |
slurp | Yahoo 的爬蟲程式 |
baiduspider | 百度的爬蟲程式 |
rogerbot | Moz.com 的爬蟲程式 |
MJ12bot | Majestic.com 的爬蟲程式 |
AhrefsBot | Ahrefs.com 的爬蟲程式 |
ia-archiver | Alexa.com 的爬蟲程式 |
屬性值#2 指定處理的方式
屬性值#2 | 說明 |
---|---|
all | 沒有索引或服務的限制。注意:這個指令是預設值,如果明確列出這個指令並不會產生任何影響。 |
noindex | 不在搜尋結果中顯示這個網頁,也不要在搜尋結果中顯示「快取」連結。 |
nofollow | 不追蹤這個網頁上的連結。 |
none | 相當於 noindex, nofollow。 |
noarchive | 不在搜尋結果中顯示「快取」連結。 |
nosnippet | 不在搜尋結果中顯示這個網頁的文字片段或影片預覽畫面。系統仍會顯示靜態縮圖 (如果有的話)。 |
notranslate | 不在搜尋結果中提供這個網頁的翻譯。 |
noimageindex | 不為這個網頁上的圖片建立索引。 |
unavailable_after: [RFC-850 date/time] | 在指定的日期/時間後不在搜尋結果中顯示這個網頁。指定日期/時間時需使用 RFC 850 格式。 |
例如我要設定所有爬蟲不在搜尋結果中顯示這個網頁、不追蹤這個網頁上的連結,就會寫成下方範例的樣子1
2
3<head>
<META NAME="robots" CONTENT="noindex, nofollow">
</head>
設定 robots.txt
robots.txt 使用上更加彈性,不用像 robots meta 每頁都要設定,而是統一在 txt 設定好。 該檔案要放在網站的根目錄底下,例如 http://網址/robots.txt
這個位置。
robots.txt 有五種宣告方式
宣告類型 | 說明 |
---|---|
User-agent | 指定搜尋引擎爬蟲類型 |
Crawl-delay | 限定爬蟲抓取每頁的秒數限制 |
Disallow | 不希望被扒取的網址路徑 |
Allow | 允許被扒取的網址路徑 |
Sitemap | 告知搜尋引擎網站的 Sitemap 網址 |
舉些例子,例如要拒絕全部的搜尋引擎爬取
- txt
1 | User-agent: * |
拒絕百度搜尋引擎爬蟲,但是允許其他搜尋引擎爬蟲1
2
3
4User-agent: Baiduspider
Disallow: /
User-agent: *
Disallow:
拒絕特定目錄被爬取,以下方的例子,則是說不要爬取 login 的頁面1
2User-agent: *
Disallow: /login
這邊提供更實際的案例可以參考, Apple robots.txt 範例 。
參考
[SEO 超入門]
[Robots.txt 規範]
[Robots Meta Directives]
[Moz robots.txt]