Запретить спамеру проникать в URL и ссылаться на почту - PullRequest
1 голос
/ 29 июня 2011

У меня есть спамер, который использует мою контактную форму PHP по электронной почте и записал это в почтовое сообщение:

[url=http://qjtouvifclfk.com/]qjtouvifclfk[/url]
[link=http://gqmrjhtujkoe.com/]gqmrjhtujkoe[/link]
http://tkihpjlwszyw.com/

Я хочу найти в сообщении все, что имеет [url= и [/url] и [link= и [/link] и http:// и .com, и удалить его.

Ответы [ 3 ]

2 голосов
/ 29 июня 2011

Это происходит постоянно. Автоматизированные боты будут отправлять POST на ваши формы, ища что-то, что они могут использовать в качестве реле спама.

Есть много способов обойти это. Наиболее распространенным является CAPTCHA, но ваши пользователи будут вас ненавидеть.

Смотрите этот пост: Альтернатива капче?

0 голосов
/ 29 июня 2011

Раньше я получал то же самое около 2 лет назад. Добавьте горшок с медом в контактную форму. Это дополнительный ввод, который скрыт с помощью CSS, а затем в вашем PHP проверьте, что он имеет пустое значение перед запуском вашего почтового скрипта. Горшки с медом мешают спам-ботам заполнять ваши формы, я использовал это на 50+ сайтах до сих пор без проблем. Дайте мне знать, если вы хотите больше информации о том, как.

0 голосов
/ 29 июня 2011
preg_replace("/\[url=(.*)\](.*?)\[\/url]\/i", "", $text);
preg_replace("/\[link=(.*)\](.*?)\[\/link]\/i", "", $text);
preg_replace("/http:\/\/\/i", "", $text);
preg_replace("/\.com/i", "", $text); //this is very agresive line! 
...