代码之家  ›  专栏  ›  技术社区  ›  Georgy Bolyuba

阻止“告诉朋友”表单中的垃圾邮件

  •  1
  • Georgy Bolyuba  · 技术社区  · 15 年前

    你必须在你的网站上有一个表格,以便人们在发现有趣的事情时向朋友发送电子邮件。您可以强制人们登录(在我的情况下,这不是一个好的选择)。你可以让时间延迟(这不是真正的紧急电子邮件,所以它可以等待5分钟)。你有这个问题吗?你将如何解决它?

    5 回复  |  直到 15 年前
        1
  •  1
  •   George Stocker NotMe    15 年前

    您是否对表单的自动脚本编写有问题,或者人们真的过多地使用它?

    bot问题的简单解决方案是验证码,例如 ReCaptcha . 用户友好性值得怀疑,但它可能会解决您的问题。

        2
  •  0
  •   RRStoyanov    15 年前

    您还可以使用与所有那些验证码脚本不同的东西。让我告诉你我做什么:

    $secretWord='TryToHashMe';
    $formID='myForm';
    $md5Value=md5($secretWord.$formID);
    
    echo '<input type="hidden" name="form-check" value="'.$md5Value.'">';
    echo '<input type="hidden" name="bot-check" value="">';
    

    这是两种非常简单的方法,因为:1)自动机器人尝试填充您的所有输入,2)没有提供哈希,这意味着您有来自站点外部的post请求。散列也可以通过一些会话或cookie进行扩展。

    祝你一切顺利!

        3
  •  0
  •   Earlz    15 年前

    For spam protection: Type what Two Plus Two is here _________
    

    我在我的个人网站上做了这件事,从来没有遇到过问题(而且我有一个 大量 spambots失败的尝试次数)

        4
  •  0
  •   Eli    15 年前

    这项服务有很好的反垃圾邮件措施。

    http://www.tellafriendking.com/features.php?showall=1#spam-free

    编辑:

    如果你觉得有必要投反对票,也许你也应该留下评论。。。

        5
  •  0
  •   avi    7 年前

    最好的解决方案是使用通用的bot过滤解决方案。我知道这是一篇老文章,但是发现了一个新的僵尸网络,它使用这些发送给朋友模块来发送垃圾邮件(不是一项新技术,而是一些有趣的新进展)。

    据一位 security vendor