我管理的一个PHP / MySQL网站是社交网络,我注意到垃圾邮件发送者会向其他几个用户发送许多看起来相似的消息.
由于同一用户帐户发送的邮件数量以及发送的邮件的相似性,似乎应该相对容易识别以这种方式向其他用户发送垃圾邮件的用户,但我只是不知道该怎么做在PHP / MySQL中.消息作为TEXT类型存储在DB中.
如何识别这些垃圾邮件发送者,以便在他们开始发送过多看起来相似的邮件时自动删除它们?
编辑:
垃圾邮件通常至少是一段文本,因此我们可以安全地忽略少于100个字符的邮件并自动通过.
解决方法:
垃圾邮件会在里面有链接,因此您可以过滤掉没有链接的邮件.
你应该首先尝试防止,所以如果一个用户开始在很短的时间内向许多用户发送许多邮件,那么它可能就是垃圾邮件.
您可以通过在会话中使用某种计数器来实现它,您可以将每个消息发送给新用户,并且如果它每小时超过20(我只是编写这个数字以使其高效,您需要进行一些测试).可能是垃圾邮件,并开始要求他验证验证码或阻止他的聊天15分钟,报告给管理员手动检查