搬瓦工的一个乞丐版 VPS ,每个月 200G 流量一直够用的,自从上个月 IP 被 X 换了个机房之后,流出流量一直居高不下,想着每秒 1MB 多一点就算了, 200G 让它去爬,反正我也用不了。没想到昨晚想 Google 找点东西,等了好久都上不去,本地 ping 一下无响应,第一反映不是又被 X 了吧?换个墙外的 IP 再次 ping 了下,还是没反应。登录 VPS 控制面板看了下,超流量被挂起。
看了下挂起之前最后的流量记录,已经超过 2M 每秒, 200G 已经用到了 200.16G , Google 这东西每天都要用,不能没有,于是想着是换一个 VPS 还是升级套餐,看了网上各家 vps ,最后决定还是升级 VPS 套餐靠谱,补足了剩下几个月的费用之后升级到了 300G 的套餐。
恢复之后第一件事就是把那个该死的 Google Bot IP 给 deny 了!
这是在 Nginx 上 deny 之前的截图:
deny 之后的截图:
话说, Google 这爬虫怎么比灵丹妙药还见效,我刚 deny 了一个,一下子又来了 3 只!
我就一小小的博客,上面 10 篇文章不到, robots.txt 这么写的:
User-agent: *
Allow: /p/
Disallow: /
他没事爬这么勤快干嘛,它 Google 流量不用钱,我烧不起啊。
我这小博客就靠 Google 导流量,把它完全 deny 我又舍不得。
怎么处理它更好?
找到原因了,反代的 Google 被 Google 抓取了,反代的那个域名 nginx 配置文件加了这一行解决了:
if ($http_user_agent ~* (baiduspider|googlebot|soso|bing|sogou|yahoo|sohu-search|yodao|YoudaoBot|robozilla|msnbot|MJ12bot|NHN|Twiceler)){ return 403; }
1
des 2015-12-07 09:53:55 +08:00 1
爬这么勤有可能是被攻击了
|
2
KyleMeow 2015-12-07 09:55:48 +08:00 1
设置 crawl-delay ,减少抓取频率
|
3
ooxxcc 2015-12-07 09:57:07 +08:00 1
TX RX 一样多,你是不是开了 google 反向代理然后被人滥用了?
|
5
KyleMeow 2015-12-07 10:01:05 +08:00 1
Google 似乎有些不同,不遵循 crawl-delay ,但是抓取速度可以在 Search Console 设置。参见 https://support.google.com/webmasters/answer/48620?hl=zh-Hans
|
6
KyleMeow 2015-12-07 10:06:35 +08:00 1
另外 GoogleBot 的 IP 段非常非常多,不要采用阻止某个 IP 的方法来减少抓取。
|
8
ooxxcc 2015-12-07 10:58:16 +08:00 1
@zeacev 看 iftop 显示很像 google 爬虫在爬反代的内容……试试给反代加个 robots.txt 或者限制大陆地区使用?
|
10
feather12315 2015-12-07 11:36:46 +08:00 via Android 1
@zeacev 试试填写 robots … txt, 禁止爬反代内容
|
11
zeacev OP |
12
zeacev OP @feather12315 加 robots.txt 见效慢,这个月只剩 100G 流量了,等他 robots.txt 生效我怕我这剩下的流量不够他爬的,直接返回 403 省事
|
13
66CCFF 2015-12-07 13:32:07 +08:00 via iPhone
我之前一个自用的静态内容也被 Google 爬了一次, 500Mbps 的速度爬了一个多小时,吓得我还以为被 D 了。
加 robots.txt 确实需要一段时间才会生效。 |
14
feather12315 2015-12-07 14:17:34 +08:00 via Android
|
15
Eleutherios 2015-12-07 15:57:30 +08:00
@zeacev 你要是不公开反代,不如加一个密码。
|