Php: Проверьте, не является ли содержимое электронной почты спамом


Я создаю функцию рассылки новостей, которая позволит пользователям отправлять электронные письма. Поскольку есть злонамеренные люди, которые хотели бы отправлять спам, я хочу иметь возможность проверить и посмотреть, является ли созданное сообщение спамом или нет.

Я рассмотрел пару различных методов, таких как попытка спам-убийцы, но вам нужно полное электронное письмо, которое у меня будет только позже. Или вам нужно установить некоторые другие утилиты, такие как spamd, но я ищу класс php, который делает это для меня, кто-нибудь знает о чем-нибудь? Или мне приходится устанавливать какое-то приложение командной строки, которое делает это?

В идеале что-нибудь простое вроде этого:

$spamChecker = new SpamChecker();
$message =  "Free Credit report, blah blah, I am spam! Detect me if you dare!";
if($spamChecker->isSpam($message)) {
    echo "You are a spammer!";
} else {
    echo "you are my friend";
}
Author: SeanDowney, 2011-01-16

3 answers

У меня была бы следующая линия защиты:

1. аутентификация.

  • Сначала аутентифицируйте пользователя, используя что-то вроде, например, lightopenid. Например, когда вы используете google в качестве поставщика openid, у вас есть очень хороший шанс, что пользователи не являются спамерами, потому что они принимают меры против спамеров.

2. Акисмет/Сблам

  • Как отметил Гленн, вы можете использовать akismet, который является бесплатным для личных сайтов. Или вы могли бы попробовать sblam, который можно использовать бесплатно.

3. Капча

  • Вы можете создать резервную копию списка рассылки с помощью captcha для еще большей защиты.

4. авторизация.

  • Запретить URL-адреса openid, которые являются спамом.
 1
Author: Alfred, 2017-05-23 11:45:29

Вполне возможно, что лучшим сервисом для фильтрации спама является Akismet. Акисмет используется довольно широко. Он включен по умолчанию в Wordpress. Я лично использую его для своего собственного сайта, если это придает какое-либо доверие Akismet. У них также есть много готовых плагинов/скриптов для различных языков на стороне сервера.

 2
Author: Glenn Nelson, 2011-01-15 22:06:56

Убийца спама, но вам нужно полное электронное письмо, которое я получу позже

Ерунда - ничто не мешает вам использовать spamassassin для обработки произвольных данных - просто никто не потрудится документировать, как это сделать. Вам даже не нужно возиться с фиктивными заголовками - просто отправьте их через spamc и проверьте код возврата.

Однако вы просто станете мишенью для спамеров, если не будете очень осторожны при установлении учетных данных ваши пользователи - а это, по крайней мере, означает проверку на наличие действительного адреса электронной почты - и если у них есть действительный адрес электронной почты, зачем им пользоваться вашим сервисом?

 1
Author: symcbean, 2011-01-16 00:20:40