2011-04-03 59 views
4

我有一个页面,登录的用户可以发表评论。我想阻止用户同时发布评论以防止垃圾邮件。为此,我想要在评论之间留出30秒的间隔(我是否应该将时间存储在会话中?),如果用户在给定的5分钟内发布10条评论,则应启用reCaptcha(并在会话中重置评论计数器) 。这种方法好吗?预防垃圾评论

回答

1

会话可能是个好主意。但是,我认为很多机器人不允许使用Cookie,因此不会遵循会话。

发布10个成功的评论对大多数垃圾邮件发送者来说已经足够了 - 之后,reCaptcha只是对活跃的普通用户感到厌烦。

我强烈建议您尝试Akismet。这是令人难以置信的评论垃圾邮件的好处。

0

您还应该确保在任何允许最终用户提交自己的html定位标记上使用rel="nofollow"属性,以使垃圾邮件的吸引力降低。 rel =“nofollow”指示搜索引擎忽略该链接,因此不允许垃圾邮件发送者收集例如谷歌网页排名来自垃圾评论链接在您的网站上。

0

在最后5分钟内存储“上次发布”的时间和数量不应该是一个坏主意,就好像您每30秒只能发布一次,10分钟最多只能发布20个帖子。你确实可以将它作为会话的一部分存储,因为无论如何都可以从数据库中检索数据(在会话中断的情况下)

1

那么我认为所有这些垃圾评论的答案是:FLASH评论框
我的意思是captcha只是很烦人...我永远不会留下评论,你必须有这个captcha thingie去。 我会建议这样的:flexi comments什么的...

+1

**没有**。 Flash对于许多用户来说远不如验证码方便。除非你真的*不喜欢你的用户,否则不要**使用Flash评论框。 – meagar 2012-05-15 02:12:22