SEO禁用蜘蛛(爬蟲)搜索收錄網頁(全)
Robots協議:用來告知搜索引擎哪些頁面能被抓取,哪些頁面不能被抓取;可以屏蔽一些網站中比較大的文件,如:圖片,音樂,視頻等,節省服務器帶寬;可以屏蔽站點的一些死鏈接。方便搜索引擎抓取網站內容;設置網站地圖連接,方便引導蜘蛛爬取頁面。
spider在訪問一個網站是,會首先檢查該網站的根域下是否有一個叫做robots.txt的純文本文件,這個文件用於指定spider在您網站上抓取範圍。
一般屏蔽有:隱私資料,表結構
robots文件是存在於網站的根目錄下,首先會檢查http://www.123.com/robots.txt這個文件。
robots格式:
User-agent: (代表所有搜索引擎)
allow:(允許抓取的相對路徑或文件)
robots.txt生成器:https://robots.51240.com/
文件用法
例:
- 禁止所有搜索引擎訪問網站的任何部分
User-agent: *
Disallow: /
實例分析:淘寶網的 Robots.txt文件:訪問www.taobao.com/robots.txt
User-agent: Baiduspider Allow: /article Allow: /oshtml Disallow: /product/ Disallow: / User-Agent: Googlebot Allow: /article Allow: /oshtml Allow: /product Allow: /spu Allow: /dianpu Allow: /oversea Allow: /list Disallow: / User-agent: Bingbot Allow: /article Allow: /oshtml Allow: /product Allow: /spu Allow: /dianpu Allow: /oversea Allow: /list Disallow: / User-Agent: 360Spider Allow: /article Allow: /oshtml Disallow: / User-Agent: Yisouspider Allow: /article Allow: /oshtml Disallow: / User-Agent: Sogouspider Allow: /article Allow: /oshtml Allow: /product Disallow: / User-Agent: Yahoo! Slurp Allow: /product Allow: /spu Allow: /dianpu Allow: /oversea Allow: /list Disallow: / User-Agent: * Disallow: /
做個例子,分析第一條:
User-agent: Baiduspider
Allow: /article
Allow: /oshtml
Disallow: /product/
Disallow: /
顯然淘寶允許百度能訪問根目錄下的article,oshtml,不允許訪問product目錄根目錄下其他的目錄
手段二:
除了設置robots協議之外,還可以在網頁代碼裏面設置。
在網頁<head></head>之間加入<meta name="robots" content="noarchive">代碼。表示緊致所有搜索引擎抓取網站和顯示快照。
- NOINDEX:告訴Google不要索引含此標簽的網頁。但根據實際經驗,Google並非100%遵守。
- NOFOLLOW:告訴Google不要關註含此標簽的網頁裏的特定鏈接。這是為了解決鏈接spam而設計的Meta標簽。
- NOARCHIVE:告訴Google不要保存含此標簽的網頁的快照。
- NOSNIPPET:告訴Google不要在搜索結果頁的列表裏顯示含此標簽的網站的描述語句,並且不要在列表裏顯示快照鏈接。
如果要針對某一個搜索引擎禁止抓取,在網頁<head></head>之間加入<meta name="baidspider" content="noarchive">代碼,表示禁止百度抓取,<meta name="googlebot" content="noarchive">表示禁止谷歌抓取,其他的搜索引擎一樣原理。
這樣,一共有四種組合:
<META NAME="ROBOTS" CONTENT="INDEX,FOLLOW">
<META NAME="ROBOTS" CONTENT="NOINDEX,FOLLOW">
<META NAME="ROBOTS" CONTENT="INDEX,NOFOLLOW">
<META NAME="ROBOTS" CONTENT="NOINDEX,NOFOLLOW">
其中
<META NAME="ROBOTS" CONTENT="INDEX,FOLLOW">可以寫成<META NAME="ROBOTS" CONTENT="ALL">;
<META NAME="ROBOTS" CONTENT="NOINDEX,NOFOLLOW">可以寫成<META NAME="ROBOTS" CONTENT="NONE">
手段三:
拒絕網站的站內搜索功能是支持輸入HTML代碼或者UBB代碼
例如:
防護方式:
1.屏蔽搜索引擎收錄站內搜索頁,或者關閉站內搜索功能
2.不屏蔽站內搜索,那需要及時發現站內搜索數據是否異常,再設置敏感詞詞庫過濾一些黑灰產業的關鍵詞,以及站內搜索必須是純文本形式。
手段四:
通過搜索引擎提供的站長工具,刪除網頁快照
網址:http://tousu.baidu.com/webmaster/add
手段五:
配置nginx的配置文件,增加http_user_agent字段進行禁止網絡爬蟲,直接返回403
例子:
server {?
listen 80;?
server_name _ ; (域名或者默認服務器地址)?
#添加防止哪些爬蟲,下面做例子
if ($http_user_agent ~* "qihoobot|Baiduspider|Googlebot|Googlebot-Mobile|Googlebot-Image|Mediapartners-Google|Adsbot-Google|Feedfetcher-Google|Yahoo! Slurp|Yahoo! Slurp China|YoudaoBot|Sosospider|Sogou spider|Sogou web spider|MSNBot|ia_archiver|Tomato Bot")?
{?
return 403;?
}?
或者
#新增location字段,並且匹配到了蜘蛛,則返回403
location = /robots.txt { ????
if ($http_user_agent !~* "spider|bot|Python-urllib|pycurl")
{????????return 403;????}
}
測試工具:http://s.tool.chinaz.com/tools/robot.aspx
註意:如果還是能夠搜索到,是因為某搜索引擎不遵守robots協議約定,那麽通過robots來禁止搜索是不夠的。
SEO禁用蜘蛛(爬蟲)搜索收錄網頁(全)