月度归档:2011年03月

抗击spam战记

    刚才分析了昨天16点到今天17点的访问日志,抓到几个spam IP。 换了主机之后,管理功能更强大了,具有shell权限,所以可以直接用Apache 的访问日志抓鬼了。呵呵。

    以下IP具有重大作案嫌疑,现在抓出来曝光下:
112.111.*.*
175.44.*.*
125.211.154.*
221.157.139.*
218.29.15.*
113.71.5.84

    请求分析显示,这几个IP访问都每隔几秒钟就POST一次评论提交,总数量大约有300~400条。好在现在使用中文验证码,已经很大程度上限制了他们大部分的spam,但仍有4条评论漏网。估计这几条是手工发布的。 过些日子我会给博客加上基于IP的评论操作策略,彻底封杀这些害人虫。 继续阅读

各式各样的正则表达式参考大全

收集的各式各样的正则表达式参考大全(访问正则表达式实例库),分享下:


^\d+$  //匹配非负整数(正整数 + 0)
//匹配整数 ^\d+(\.\d+)?$  //匹配非负浮点数(正浮点数 + 0)
^(([0-9]+\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\.[0-9]+)|([0-9]*[1-9][0-9]*))$  //匹配正浮点数
^((-\d+(\.\d+)?)|(0+(\.0+)?))$  //匹配非正浮点数(负浮点数 + 0)
^(-(([0-9]+\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\.[0-9]+)|([0-9]*[1-9][0-9]*)))$  //匹配负浮点数
^(-?\d+)(\.\d+)?$  //匹配浮点数
^[A-Za-z]+$          //匹配由26个英文字母组成的字符串
^[A-Z]+$     //匹配由26个英文字母的大写组成的字符串
^[a-z]+$  //匹配由26个英文字母的小写组成的字符串
^[A-Za-z0-9]+$  //匹配由数字和26个英文字母组成的字符串
^\w+$  //匹配由数字、26个英文字母或者下划线组成的字符串
^[\w-]+(\.[\w-]+)*@[\w-]+(\.[\w-]+)+$    //匹配email地址
^[a-zA-z]+://匹配(\w+(-\w+)*)(\.(\w+(-\w+)*))*(\?\S*)?$  //匹配url
匹配中文字符的正则表达式: [\u4e00-\u9fa5]
匹配双字节字符(包括汉字在内):[^\x00-\xff]
匹配空行的正则表达式:\n[\s| ]*\r
匹配HTML标记的正则表达式:/<(.*)>.*<\/>|<(.*) \/>/
匹配首尾空格的正则表达式:(^\s*)|(\s*$)
匹配Email地址的正则表达式:\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*
匹配网址URL的正则表达式:^[a-zA-z]+://(\w+(-\w+)*)(\.(\w+(-\w+)*))*(\?\S*)?$
匹配帐号是否合法(字母开头,允许5-16字节,允许字母数字下划线):^[a-zA-Z][a-zA-Z0-9_]{4,15}$
匹配国内电话号码:(\d{3}-|\d{4}-)?(\d{8}|\d{7})?
匹配腾讯QQ号:^[1-9]*[1-9][0-9]*$

继续阅读

boblog中文汉字验证码增强补丁

  最近一段日子被可恶的spam盯上了,每天来博客查看的时候发现总是有百十条垃圾评论。前些日子比较忙,于是索性把博客设置成了所有言论需审核。今天终于忍无可忍,决定对这些个spam宣战。

  boblog里面已经开全了验证码设置,但是每天还是有那么多条提交,于是怀疑自带的验证码被识别了。在官方找到一个增强版的验证码(传送门:官方验证码增强),patch之后有所好转,但是依然出现了接近10条spam评论(却是为何?这个识别起来没那么容易啊,求解。)于是决定上线更加复杂的中文验证码补丁。中文验证码的思路和英文是一样的,建立画布,随机点上噪点,随机划上干扰线,然后在随机选取字符,用字库生成即可。过程不复杂。在实施的时候去javaeye上面找了点现成的代码放上,偷懒了,呵呵。 (传送门:中文验证码原文

  使用效果预览:
  查看图片

  以下是修改好的适用boblog的验证码Patch,覆盖对应文件即可。验证码采用的字库为随Android系统发布的Droid字体,遵从Apache许可证协议分发。 继续阅读

博客更换域名服务器

由于众所周知的原因,我被迫将博客和域名迁移至美国的空间。速度还不错~

先前的域名由于是CN域名,无法转出,但目前仍能使用。至于使用到什么时候,只能听天由命了。

通过www.msphome.cn访问会自动转跳至新域名。

新域名为starlight36.com

感谢大家的支持!