说明:虽然建设网站的目的大部分是为了优化搜索引擎排名,实现互联网营销,但特殊情况下,仍会遇到“不希望搜索引擎收录”的需求,例如因为一些原因做了一个内容与主站几乎相同的二级站,但因为内容高度相似,百度关键词排名一部分给了二级站,影响了主站点的排名,这个时候就有这个必要斩断百度的收录。这里给出一个能有效禁止百度等搜索引擎收录的解决方案。
一、Robots.txt只能禁止抓取,无法禁止收录
很多人认为在robots.txt中禁止百度蜘蛛爬取就等于禁止收录,这是严重的误解。
robots.txt文件可以告诉搜索引擎哪些目录和文件可以抓取,哪些不可以。经过实践发现,即使禁止搜索引擎抓取根目录,robots文件也并不能实现禁止百度等搜索引擎收录。
如果一个网站的外链较多,基本上无法通过正常手段禁止百度收录,淘宝便是一个典型的案例(淘宝的robots.txt设置为禁止抓取根目录,但首页依然被收录)。关于robots.txt的作用、文件格式、使用方法,可参考>>百度站长平台的说明。
二、通过Nginx判断user_agent禁止百度等搜索引擎访问,实现禁止收录
既然不能直接禁止抓取,那就干脆禁止百度蜘蛛等搜索引擎访问,思路是:判断user_agent
,如果是百度蜘蛛、谷歌机器人等搜索引擎的user_agent
,就返回403或者404,这样百度等搜索引擎就会认为这个网站无法打开或者不存在,自然也就不会收录了。
其实之前也写过类似的文章《Apache/Nginx/PHP 屏蔽垃圾 UA 爬虫的方法》可以参考一下
这里Nginx的配置代码如下:
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;
}
通过curl
模拟搜索引擎抓取,测试以上代码有效,并在多次项目实践中验证了此方法的可行性,实现了彻底禁止百度收录!
相关推荐
- ngx_waf:一款高大全的 Nginx 网站防火墙模块
- LNMP 编译安装 ngx_pagespeed 模块给网站提速!
- 关于搜索引擎爬虫抓取页面的两大规则(抓取策略图解)
- H5自适应网站封装百度智能小程序,获取百度流量!
- 解决百度分享不支持https的问题
- 一款基于Python3可批量下载Pixiv原图的爬虫
文章作者:喵斯基部落
原文地址:https://www.moewah.com/archives/2351.html
版权声明:本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。非商业转载及引用请注明出处(作者、原文链接),商业转载请联系作者获得授权。
感觉以后会用到