在大部分情况下,网站开发完成后,在运营期间,都希望搜索引擎收录网站的内容越多越好,但是有的时候为了安全期间不希望搜索引擎收录网页内容,比如在外网部署的监控系统等;
以下列举了屏蔽主流搜索引擎爬虫(蜘蛛)抓取/索引/收录网页的几种思路。注意:是整站屏蔽,而且是尽可能的屏蔽掉所有主流搜索引擎的爬虫(蜘蛛)。 1、通过 robots.txt 文件屏蔽 可以说 robots.txt 文件是最重要的一种渠道(能和搜索引擎建立直接对话)。我通过分析我自己博客的服务器日志文件,给出以下建议(同时欢迎网友补充): User-agent: Baiduspider Disallow: / User-agent: Googlebot Disallow: / User-agent: Googlebot-Mobile Disallow: / User-agent: Googlebot-Image Disallow:/ User-agent: Mediapartners-Google Disallow: / User-agent: Adsbot-Google Disallow: / User-agent:Feedfetcher-Google Disallow: / User-agent: Yahoo! Slurp Disallow: / User-agent: Yahoo! Slurp China Disallow: / User-agent: Yahoo!-AdCrawler Disallow: / User-agent: YoudaoBot Disallow: / User-agent: Sosospider Disallow: / User-agent: Sogou spider Disallow: / User-agent: Sogou web spider Disallow: / User-agent: MSNBot Disallow: / User-agent: ia_archiver Disallow: / User-agent: Tomato Bot Disallow: / User-agent: * Disallow: / 2、通过 meta tag 屏蔽 在所有的网页头部文件添加,添加如下语句: <meta name="robots" content="noindex, nofollow"> 3、通过服务器(如:Linux/nginx )配置文件设置 直接过滤 spider/robots 的IP 段。 小注:第1招和第2招只对“君子”有效,防止“小人”要用到第3招(“君子”和“小人”分别泛指指遵守与不遵守 robots.txt 协议的 spider/robots),所以网站上线之后要不断跟踪分析日志,筛选出这些 badbot 的ip,然后屏蔽之。 这里有一个badbot ip 数据库:4、通过搜索引擎提供的站长工具,删除网页快照 比如,有的时候百度不严格遵守 robots.txt 协议,可以通过百度提供的“网页投诉”入口删除网页快照。百度网页投诉中心: 如下图是我的一个网页投诉:
大概3天左右的时间过去,这个网页的百度快照也被删除,说明此种方法也能起效,当然这是不得而为之,属于亡羊补牢。
5、补充更新 可以通过检测 HTTP_USER_AGENT 是否为爬虫/蜘蛛访问,然后直接返回403 状态码屏蔽之。比如:由于api 权限与微博信息隐私保护原因,Xweibo 2.0 版本后禁止搜索引擎收录。