现在,越来越多的灌水机被使用到网络上,
有的是为了发送广告本身,有的则是为了制作反向链接,
这种机器会自动到搜索引擎中搜索留言本等可以发布信息的地方,
然后向表单提交广告信息。
大部分人使用验证码的方法来防止垃圾信息的侵入,
但是这种方法让访问者的感受大打折扣。
为了防止灌水机而让所有真的需要留言给你的人痛苦不堪,那不是好办法。
最近想了一个办法与大家分享。
一般情况下,用户到你的留言本留言的过程是:
1、从首页或者栏目页或者文章页点击连接进入留言本页面
2、从留言本页面进入发表留言页面
3、填写并提交留言
我们看到,用户直接POST数据给最终处理数据的程序(比如叫 add.asp )的可能性为零,
就是说,如果从 add.asp 中无法得到来路,则一定是灌水机无疑。
我们还注意到,用户从进入填写留言的页面,到点击提交按钮,
这之间是一定有时间的,因为用户需要打字,如果灌水机模拟了类似上面2→3这样的访问,他一般不会等待这个时间。
所以,我用下面的方法判断灌水机:
1、当用户进入填写留言的页面时,记住当时的时间。
2、在处理用户提交数据的程序中,先判断是否有来路信息,没有来路信息的一定是垃圾信息。
3、如果有来路信息,则判断用户进入【留言填写页面】时的时间和现在的时间的时间差,如果太小,则仍然判断为垃圾信息。