Какие методы доступны для автоматической борьбы со спамерами с помощью PHP/MySQL
В настоящее время я создаю приложение для ранжирования новостей, в котором пользователи подключены друг к другу и могут публиковать новости в базе данных. Пользователи могут голосовать за упомянутые новостные сообщения с рейтингом 10 - 1. 10, что дает этому элементу максимально возможное количество голосов, и это, в свою очередь, определяет рейтинг будущих новостных сообщений, которые пользователь может увидеть после входа в систему.
В настоящее время мой подход к автоматическим действиям со спамерами заключается в использовании порога, при котором средний рейтинг общего числа голосов, за которые проголосовал пользователь, падает ниже этого порога. Тогда отношения между двумя пользователями будут автоматически удалены.
Этот подход подходит для индивидуальных отношений, но, скажем, спамер может быть очень быстро идентифицирован многими пользователями. Как я могу решить эту проблему более эффективно?
2 ответа
Одна вещь, которую я вижу, происходит все больше и больше, это метод honeypot. Добавьте некоторые поля в форму и стилизуйте их так, чтобы они не были видны конечному пользователю, использующему css. Затем в вашем коде проверьте, имеет ли поле измененное (по умолчанию) значение. Если это так, то это бот (потому что люди не могут видеть и, следовательно, менять поля).
Если вы идете по этому пути, не забудьте изменить табуляцию этих полей. Я всегда ввожу формы, используя кнопку табуляции, и раздражает переход на поле, которое вы не видите. И еще больше раздражает, когда меня признают ботом!
Кроме того, полезно сохранить спам-комментарий в базе данных и затем отобразить его на своем сайте, но только на IP-адресе, который его опубликовал. Таким образом, бот будет (надеюсь) думать, что ему удалось опубликовать и двигаться дальше.
Вы можете защитить свой голос с помощью капчи (например, Google ReCaptcha), но это смешное решение, которое использовало большинство сайтов. Если вам нравятся ваши пользователи, используйте такие сервисы, как http://uniqpin.com/