问题场景:
客户使用虚拟主机,网站被搜索引擎爬虫访问耗费大量流量和带宽,如何处理。
解决方法:
可以通过在站点根目录下创建 Robots.txt,Robots.txt 文件是网站的一个文件,搜索引擎蜘蛛抓取网站首先就是抓取这个文件,根据里面的内容来决定对网站文件访问的范围。它能够保护我们的一些文件不暴露在搜索引擎之下,从而有效的控制蜘蛛的爬取路径。
注:Robot.txt协议不是强制协议,部分搜索引擎或者伪装成搜索引擎的爬虫不会遵守该协议,对于不遵守该协议的情况,以下方法无效。
1. 首先,先了解一下目前搜索引擎和其对应的 User-Agent,如下:
搜索引擎 User-Agent
AltaVista Scooter
baidu Baiduspider
Infoseek Infoseek
Hotbot Slurp
AOL Search Slurp
Excite ArchitextSpider
Google Googlebot
Goto Slurp
Lycos Lycos
MSN Slurp
Netscape Googlebot
NorthernLight Gulliver
WebCrawler ArchitextSpider
Iwon Slurp
Fast Fast
DirectHit Grabber
Yahoo Web Pages Googlebot
LooksmartWebPages Slurp
2. Robots.tx t样例代码:
例1. 禁止所有搜索引擎访问网站的任何部分
User-agent:
Disallow: /
例2. 允许所有的搜索引擎访问网站的任何部分
User-agent:
Disallow:
例3. 仅禁止Baiduspider访问您的网站
User-agent: Baiduspider
Disallow: /
例4. 仅允许Baiduspider访问您的网站
User-agent: Baiduspider
Disallow:
例5. 禁止spider访问特定目录
User-agent: *
Disallow: /cgi-bin/
Disallow: /tmp/
Disallow: /data/
注意事项:
三个目录要分别写。
请注意最后要带斜杠。
带斜杠与不带斜杠的区别。
例6. 允许访问特定目录中的部分url
实现a目录下只有b.htm允许访问
User-agent: *
Allow: /a/b.htm
Disallow: /a/