怎么样阻止不友好的搜索引擎机器人蜘蛛爬虫?

WBOY
풀어 주다: 2016-06-23 14:04:19
원래의
1105명이 탐색했습니다.

今天在服务器上面发现,MYSQL流量很高。然后查看一下日志,发现一个不友好的蜘蛛爬虫,看了一下时间 一秒钟访问页面7,8次,而且访问的是网站的整站收索页面。就是不听的查询数据库。
我想问一下大家遇到这类的问题,如何防范? 现在我已经静止了这个IP地址


回复讨论(解决方案)

没有什么好方法。你可以观察哪些ip访问频繁,有嫌疑的就禁封。

程序当中,你可以设置同一个ip两次访问的间隔时间。

没有什么好方法。你可以观察哪些ip访问频繁,有嫌疑的就禁封。

程序当中,你可以设置同一个ip两次访问的间隔时间。
谢谢,刚才看了一下DISCUZ,好像有一个robots.txt 可以设置爬虫的访问站点,这个是否有用呢?

今天在服务器上面发现,MYSQL流量很高。然后查看一下日志,发现一个不友好的蜘蛛爬虫,看了一下时间 一秒钟访问页面7,8次,而且访问的是网站的整站收索页面。就是不听的查询数据库。
我想问一下大家遇到这类的问题,如何防范? 现在我已经静止了这个IP地址
先学习了!

robots.txt是通用的,搜索引擎遵守的规范,它们会先爬你的robots.txt,根据其中的约束进行爬取。

关键你看看access日志,看看是谁家的爬虫来看的,它们都会在User-Agent头上标注自己是什么网站的爬虫。

先配置一下access_log的格式打印出来User-Agent,重启服务器,等一段时间重新看一下access_log,看看是不是正常爬虫,非正常爬虫你也没办法,只能限制IP访问。

百度的各种蜘蛛名字:

  产品名称 对应user-agent
  网页搜索 Baiduspider
  无线搜索 Baiduspider-mobile
  图片搜索 Baiduspider-image
  视频搜索 Baiduspider-video
  新闻搜索 Baiduspider-news
  百度搜藏 Baiduspider-favo
  百度联盟 Baiduspider-cpro

这是百度的爬虫。

嗯,不过现在我打算写一个程序,控制每个IP查询的间隔时间。

robots.txt对大部分爬虫还是有用滴, 直接挡掉, 但是对某些爬虫, 例如百度, 是挡不住的.
建议加上. 

原本robots.txt 就可以了,不过总是有人不守规则.所以还是要记录,然后屏蔽掉某些ip地址...

当然,你也可以用https...呵呵

既然这个爬虫1秒7.8次,那你觉得他会看你的robots.txt吗?
百度都不看,别说这类采集器了。

判断频率或者分析它的ua头,果断禁止掉吧。别客气了

采集器爬虫一个原理吧?

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿