减轻Bing爬虫MSNBot给网站造成的压力

Posted by zuzhihui in 互联网技术 on 2013/04/29 with No Comments

最近某客户的VPS经常因为负载过高而无法访问。用ras-shell给VPS硬重启后过几十分钟就又因为负载高而无法访问了。

用netstat命令可以看到某些IP频繁访问网站的所有网页,给网站造成的压力很大。用host命令查看这些IP,可以看到这些IP都反向解析到以msnbot开头的一个主机名上,很明显,这是微软的Bing搜索引擎的爬虫,频繁便利网站的所有页面,影响了网站的正常访问。

可以用iptables把这些爬虫的IP段给封掉,这样网站就可以正常访问了。但这只是临时的解决方案,因为封了这些IP也会影响Bing搜索引擎的收录。

在网上搜索这个问题的解决方案,找到这篇文章,是微软官方的:http://www.bing.com/blogs/site_blogs/b/webmaster/archive/2009/08/10/crawl-delay-and-the-bing-crawler-msnbot.aspx ,页面内容在浏览器里面无法正常显示,但在Google的Cache里面还有完整内容,现在翻译如下。

抓取延迟和Bing爬虫,MSNBot

搜索引擎,如Bing,需要定期抓取网站,不仅索引新内容,还要检查网站内容是否更改和删除。Bing给站长们提供了一个方法,能减慢抓取速率,以减轻Web服务器的负载。

使用这个方法并不是必须的,但在网络管理员需要减轻网站压力时确实有效的方法。小网站和不经常更新的网站不必设置抓取延迟。
较大的网站,有很多页面,经常更新,爬虫就来的多,给网站造成的压力就大。

您是否应该设置抓取延迟?

许多因素会影响抓取一个网站,包括(但不限于):

  • 网站上的页面总数
  • 内容的大小(PDF和Microsoft Office文件的大小通常要远远大于普通的HTML文件)
  • 网站内容是否经常更新
  • 允许的并发连接数
  • 网站的带宽
  • 网站排名

上面这些因素综合在一起,决定了爬虫对一个网站抓取的频繁程度。
正是因为有这么多的因素,所以没有明确的,通用的答案告诉你是否应该设置抓取延迟。

这就是说,一些网站管理员,由于技术上的原因,需要设置抓取延迟。因此,我们要解释如何做到这一点,你应该怎样设置,这样做的影响。

在robots.txt文件中设置爬虫的频率

Bing支持网站的robots.txt文件的REP指令,这个robots.txt文本文件应该放在网站的根文件夹下。 修改robots.txt文件是设置MSNBot抓取延迟的唯一有效的方法。
如何设置抓取延迟参数
在robots.txt文件中的抓取延迟指令如下所示:
User-agent: *
Crawl-delay: 10

Crawl-delay就是抓取延迟指令,后面跟一个正整数值。Bing建议使用尽可能的最低值,建议不要高于10,因为这将严重影响Bing机器人的抓取效率。

Crawl-delay设置 索引更新速度
不设置 正常
1 较慢
5
10 很慢

cPanel/WHM控制面板root登录失败怎么办

Posted by zuzhihui in Linux技术 on 2013/04/27 with No Comments

cPanel/WHM控制面板管理员登录界面,比如 https://a.b.c.d:2087 ,root用户登录失败,密码也没有写错,怎么会失败呢?

一个常见的原因是现在有不法分子才您的root密码,他们不断在https://a.b.c.d:2087 进行尝试,导致控制面板禁止root登录了。

怎么办呢?

SSH登录到服务器上,查看/var/log/messages 日志文件,会发现很多类似下面的日志:

Apr 27 01:28:13 sjd-royalmonkey-com PAM-hulk[16331]: Brute force detection active: 580 LOGIN DENIED — TOO MANY FAILURES — IP TEMP BANNED

这就是他们猜密码的证据。

再打开/usr/local/cpanel/logs/cphulkd.log 日志文件,会发现很多类似如下的日志:

Sat Apr 27 01:48:30 2013 [info] Connection service=system ip=115.115.75.157 port= user=root blocked by cphulkd (IP Address listed as brute)

这个日志里面就显示出他们的IP地址了。有了IP地址就好办了,用下面的命令来禁止这个IP即可:

iptables -I INPUT -s 115.115.75.157 -j DROP

然后过一会,控制面板就恢复正常了,可以登录了。

使用cloudflare的服务

Posted by zuzhihui in 互联网技术 on 2013/04/25 with No Comments

瑞豪开源可以免费帮客户部署CDN服务,整个步骤大概如下:

  1. 客户网站建好后提交服务单,说明为哪个域名部署服务。
  2. 瑞豪开源客服检查客户的网站,如果此时网站能正常打开,则继续下一步;如果此时网站因为其它原因(比如正在被攻击)无法打开,瑞豪开源客服记录一下域名指向的IP地址,继续下一步。
  3. 瑞豪开源的客服登录cloudflare.com,把域名添加进去,并一步步走到最后,注意都使用默认设置即可,不要修改cloudflare的默认设置。
  4. 让客户把域名的DNS服务器修改为 abby.ns.cloudflare.com 和 ivan.ns.cloudflare.com,然后等30分钟即可生效。注意这一步不要提前,否则会影响上一步中的DNS自动检测部分。

还需要注意一点,使用cloudflare的服务后,网站在中国大陆地区就打不开了,因为大陆屏蔽了cloudflare。

一般情况下,不要打开I am under attack选项,因为打开这个选项后网站的首页会受影响。即使网站正在被攻击,也不要打开这个选项。除非攻击导致后台的服务器都无法正常运行,客户的网站也无法打开的情况下,才能启用这个选项,启用这个选项后,应该每天都试着把这个选项去掉,看看网站是否能打开,攻击是否消退。

国内VPS没有备案可以这样建网站

Posted by zuzhihui in 客户服务 on 2013/03/22 with No Comments

国内VPS自带一个IP地址,开通后就可以使用,VPS本身是不需要备案的。需要备案的是域名。

假如国内VPS的IP地址是8.8.8.8,不需要备案也可以建网站http://8.8.8.8,通过IP地址直接访问,不需要备案。

如果一个域名没有备案,比如nobeian.com,指向了8.8.8.8这个IP地址,那么通过http://www.nobeian.com访问网站的时候,返回的网站内容有可能被过滤掉,被过滤的原因是机房有过滤设备能检测域名是否备案了,如果备案了,则放过,如果没有备案,网站内容就会被过滤掉。当然,机房的过滤不是一直存在的,和机房关系大,有的机房每月才过滤一次,也有的机房没有过滤。

如果客户没有备案过的域名,我们可以给免费分配一个已经备案了的域名给客户,客户用这个域名做网站,内容就不会过滤的。当然我们分配的域名不是顶级域名,比如DOMAIN.rascdn.com ,其中DOMAIN部分客户可以自己选择。有需要可以联系客服分配。

最后透露一下,我们的北京XEN VPS就没有过滤哦。

.com域名默认使用DNSPOD的域名服务器

Posted by zuzhihui in 域名 on 2013/03/15 with No Comments

在瑞豪开源注册的.com域名,默认会把域名服务器设置为dnspod的域名服务器:f1g1ns1.dnspod.net和f1g1ns2.dnspod.net 。域名注册成功后,客户去dnspod.cn把这个域名添加到自己在dnspod的帐号里面即可。

dnspod一个帐号能支持无限个域名,所以有多个域名的客户无需在dnspod注册多个帐号哦。

怎样在dnspod里面删除一个域名

Posted by zuzhihui in 客户服务 on 2013/03/13 with No Comments

本文介绍怎样在dnspod.cn里面删除一个域名。

登录到dnspod.cn里面以后,选中你要删除的域名,点击“更多”,在弹出来的菜单中点击“删除”即可。如下图所示:

dnspod-delete

怎样本地解析域名测试网站

Posted by zuzhihui in 互联网技术 on 2013/03/13 with No Comments

域名本地解析指的是:仅仅在本地电脑上让一个域名指向一个IP地址。由于仅仅是在本地电脑上解析,所以域名可以是还没有注册的域名,也可以是任何已经注册生效的域名,也可以是一个被暂停的域名。
有的病毒会利用域名本地解析进行诈骗或者钓鱼。比如病毒入侵到本地电脑后,把支付宝的域名alipay.com本地解析到一个被黑客控制的IP地址上,黑客在这个IP地址上伪装了支付宝网站,浏览器访问alipay.com将会出来这个伪装的网站。
域名本地解析也可以用来测试网站建设,比如域名hello.com还没有注册或者被暂停了或者解析没有生效,可以在VPS上面先把网站建好,然后本地解析域名到VPS的IP上面去,然后用浏览器打开hello.com就可以看到这个网站了。
在Windows上做本地解析的方法是:打开C:\WINDOWS\system32\drivers\etc目录,找到host文件,用记事本打开host文件,在这个文件的最后加入一行:”127.0.0.1  www.hello.com” 即可,这样就把www.hello.com本地解析到127.0.0.1这个IP地址了。然后在本地打开浏览器访问www.hello.com,实际上访问的就是127.0.0.1这个IP地址了。

在Linux下用本地解析测试网站更简单,只需执行这个命令 curl -H “Host: www.hello.com” 127.0.0.1 即可。curl是一个通过HTTP协议获取网页的命令,参数 -H “host: www.hello.com” 是让curl连接到127.0.0.1地址后,在HTTP协议的头部说明主机名是www.hello.com,实际上curl就是模仿浏览器,这个参数是让curl连接到服务器后,使用主机名www.hello.com,这样web服务器就会返回服务器上这个网站的内容。

Kloxo控制面板的一个DNS问题

Posted by zuzhihui in 控制面板 on 2013/03/11 with No Comments

最近安装Kloxo控制面板的VPS和独立服务器经常被人利用,53端口的流量特别大。这是因为安装了Kloxo控制面板后,默认开启了一个没有限制的recursive DNS server的服务。这个没有限制的DNS服务被人利用做肉鸡了。

DNS服务基本没有客户使用,所以解决这个问题就很简单,运行这个命令即可:service named stop; chkconfig named off

另外,Kloxo控制面板自带的POP3服务也极易被攻击,建议这样关闭:service courier-imap stop; chkconfig courier-imap off

瑞豪开源以后给客户安装的Kloxo控制面板,安装完成后,默认将运行上面的命令,关闭这2个服务。如果客户确实需要再打开。

.ca域名的注册和确认

Posted by zuzhihui in 域名 on 2013/02/28 with No Comments

新注册.ca域名后,加拿大域名注册局会给注册人发一封Email,注册人需要按照Email里面的要求,打开加拿大域名注册局的网页,确认后才可以使用域名。没有确认的.ca域名是无法正常使用的。

如果客户没有收到注册局发的Email,可以提交服务单,让瑞豪开源的客服到后台查看域名的信息,并帮助确认一下即可。

加拿大域名注册局的确认地址是 https://services.cira.ca/agree/agreement/agreement.jsp ,需要选中这个页面里面的3个单选框,填写联系ID(Email里面有提供联系ID),最后输入图片中的验证码,确认即可。

如果加拿大域名注册后7天内没有确认,域名将被删除,并且不退款。

不让MySQL进行反向DNS解析

Posted by zuzhihui in mysql on 2013/02/22 with No Comments

从其它地方连接MySQL数据库的时候,有时候很慢。慢的原因有可能是MySQL进行反向DNS解析造成的。

MySQL数据库收到一个网络连接后,首先拿到对方的IP地址,然后对这个IP地址进行反向DNS解析从而得到这个IP地址对应的主机名。用主机名在权限系统里面进行权限判断。反向DNS解析是耗费时间的,有可能让用户感觉起来很慢。甚至有的时候,反向解析出来的主机名并没有指向这个IP地址,这时候就无法连接成功了。

可以在配置文件里面禁止MySQL进行反向DNS解析,只需在my.cnf的[mysqld]段落中加入如下行即可:

skip-name-resolve

Back to Top

2007-2013 © 北京瑞豪开源科技有限公司 京ICP备13004995号-2