PHP-如何防止垃圾邮件跟踪数据库中所有可用的电子邮件列表?
我设计了一个注册表单,用户可以使用它进行注册。 当用户注册帐户时,他/她必须提供一封电子邮件,然后我将使用ajax调用名为checkavailableemail.php的服务器php脚本 如果数据库中存在提供的电子邮件,那么我将传回FALSE,用户可以看到红色警告消息,表单无法通过验证过程 问题是, 有没有一种方法可以防止垃圾邮件从我的数据库中获取所有可用的电子邮件 例如,坏人可以设计一个自动脚本,使用一些方法连续发送电子邮件验证请求。最后,这家伙可以得到我当前所有客户电子邮件帐户的完整列表PHP-如何防止垃圾邮件跟踪数据库中所有可用的电子邮件列表?,php,Php,我设计了一个注册表单,用户可以使用它进行注册。 当用户注册帐户时,他/她必须提供一封电子邮件,然后我将使用ajax调用名为checkavailableemail.php的服务器php脚本 如果数据库中存在提供的电子邮件,那么我将传回FALSE,用户可以看到红色警告消息,表单无法通过验证过程 问题是, 有没有一种方法可以防止垃圾邮件从我的数据库中获取所有可用的电子邮件 例如,坏人可以设计一个自动脚本,使用一些方法连续发送电子邮件验证请求。最后,这家伙可以得到我当前所有客户电子邮件帐户的完整列表 谢
谢谢你可能有数以百万计的电子邮件ID。 这个坏蛋需要发送无数的请求来获取你当前的客户电子邮件帐户列表。因此,如果您从单个IP收到大量请求,您可以暂时阻止这些请求 所以,不用担心 [编辑]:操作说明: 您可以通过以下代码获取用户的IP:
$IP = $_SERVER['REMOTE_ADDR'];
保留IP在过去24小时内发出的请求数列表,并将其记录到数据库表中。如果请求数超过某个限制,例如500,您可以通过检查具有相同代码的用户的IP来拒绝来自此IP的请求。您可以使用会话,并在每次失败的注册尝试中增加会话数。一旦他们达到10,禁用表单一段时间。很抱歉,我不能发布示例,我的PHP不强。Brian和shamittomar几乎什么都说了 你的担心几乎是虚构的,因为垃圾邮件“花花公子”最好发送电子邮件到随机地址,而不是淹没你的网站验证,然后发送垃圾邮件到这些地址
只需建立一个限制。此方法的一个潜在问题是,您可以继续跟踪同一用户。否则,不让普通用户尝试多次是不公平的。