处理访问记录中的spam

做blog访问统计插件,所有的个性化创新功能都是为了方便站主或博主。StatPressCN作为基于wordpress网志的统计插件,必须要结合网志的特点提供特色功能。最开始接管StatPress的时候,就对提供的最近来访者、最近的搜索关键词以及对供稿(feed)的处理比较满意,后来结合近来移动上网(通过手机等)迅猛增加的发展趋势新增了“移动访问分析”板块,这两天又增加了“朋友”功能,呵呵,这可是其他常规统计插件不可能提供的哟。然而,这一切,都以能得到纯净的访问记录为前提,这中间的关键是,把spam给有效的识别出来并做相应处理。想起原来的访问记录居然是常规第三方统计插件(如GA、yahoo统计等)的两倍多,汗颜啊,惭愧啊,不过现在已经非常准确了,估计比那些通用插件还要精确些呐,呵呵,因为me自认对spam的处理还是非常精确高效的。

spam指的那些无聊甚至恶意的访问,属于非自然人访问的一种(另外一种是大名鼎鼎的spider)。大多数是为了做广告、拉流量,也有一些是三脚猫黑客的造访记录。wordpress提供了较好的防止spam功能,比如留言审核(可以设定为全部审核或首次审核),另外还有第三方插件,比如鼎鼎大名的Akismet可以过滤垃圾评论。但是这并不能禁止所有的spam,它们该来还是来了。

首当其冲的是三脚猫黑客的恶意访问。一般情况下大家架的blog不会夹杂其他程序或服务,这样就给识别这些恶意访问提供了方便。比如asp后缀名文件的访问(明明服务器端脚本用的是php嘛)、对“网站.rar”的请求(估计是针对那些打包上传空间的漏洞的)。对于这些访问,不能轻易在StatPressCN中忽略了事,还要做针对性处理。最直接的方式就是禁止这些ip访问,采用.htaccess文件进行限定,具体办法见博文“黑客黑啊”。考虑每次上传下载.htaccess文件不方便,me在StatPressCN中提供了动态更新.htaccess规则的子页面(可以在选项中使能)。

其次就是那些试图通过注册为用户的方式阿布广告的访问。为了让新朋友方便,一般的blog都设置为“任何人都可以注册”,这一方面提供了用户友好度,显得我们很好客嘛,呵呵,但另外一方面也给那些spamer提供了方便。对于那些偷偷溜进来的spam,第一道关自然是Akismet,但也有些漏网之鱼,那就靠自己识别了。前两天发现不少对“/wp-signup.php”的访问,me还以为是有用户注册呢。后来遍查wordpress的源文件库都没有发现此文件。后来在网络上搜索才知道,原来是针对wordpress mu的漏洞来的。对这种访问量刑后觉得罪不当诛,在记录时忽略了事好了。

最后一种则是那些隐形spider,其中以微软的live为最。对于这种偷偷摸摸的行为说实话没啥好的识别办法,就是注意观察那些短时间内大量的连续访问(任谁都不可能半分钟内访问三十多页面吧,服务器也反应不过来啊),查出来就把ip拉入banip.dat文件进行阻止。再一个方面是看“详情”板块中的“倾情粉丝”,呵呵,一个月内访问了几百页面的可能是“粉丝”,也可能是spam哟。把那些ip在“搜索”中查查就可以了。

对spam的处理其实只有两种,要么在统计是忽略它,如果是恶意的,要考虑同时把ip通过.htaccess机制完全禁止访问(要小心,不要误伤)。

作者: heart5

生命如歌,我自徜徉。

《处理访问记录中的spam》有2个想法

发表评论

电子邮件地址不会被公开。 必填项已用*标注

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据