Эксперимент с антиспам-картинкой
Вторник, 24 июля 2007 г.
Просмотров: 2745
Подписаться на комментарии по RSS
После того, как я поставил на свой блог антиспам-картинку, ту которая с новым подходом, да еще и отключил для старых записей пинги и трекбаки, количество спама резко сократилось. То есть вообще ноль.
Наверное это несколько необычно, поэтому сегодня я уж грешным делом подумал, что может быть тогда есть смысл отключить антиспам-картинку, поскольку для кого-то она оказывается сложновата. В общем, утром отключил, а сейчас зашел в админ-панель и сразу успокоился.
Все-таки спам есть. За неполных 9 часов отсутствия антиспам-картинки у меня набралось 13 коментов, а еще 21 коммент отловил мой фильтр черного списка. Все были явно добавлены через автозаполнение (трекбаки и пинги ни одного, хотя на новые записи я пинги разрешаю).
Я так подсчитал, такими темпами, если отключить антиспам у меня за эти три месяца набралось бы около 5 тысяч спамовских комментов. Нехилая разница, по сравнению с нулем. ![]()
В общем я еще раз убедился в эффективности моего алгоритма. Кстати, в моей сборке WordPress 2.2.1 я вложил уже исправленную (и улучшенную) версию этого плагина.

Комментариев: 25
А зря, зря! Мог бы быть самым комментируемым блогом в рунете :wink:
как говорят:
лучше меньше да лучше
А улучшенная антиспам-картинка - это когда надо ввести "только нижние символы"?
У меня на форуме в день от 5 до 20 спам-регистраций - без всякой защиты. Считаю за перекур после работы пробежаться по базе и удалить спамовые рагистрации
Никак руки не дойдут прикрутить какую-нибудь CAPTCHA'у.
2 MAX: а что может быть сложного-то в твоей картинке? Темы же не для грудничков поднимаешь, и не для даунов
Akismet прекрасно справляется с этой задачей.
Я пока с этим не заморачиваюсь, так как мой блог не раскручен
Воспользуюсь случаем, раз уж зашла речь об этом антиспам-плагине.
Хостинг у меня американский, соответственно, всё в UTF-8 (WP - 2.2.1). Но вот какая проблема. Если при добавлении нового коммента сознательно не указать цифры кода (дабы увидеть текст ошибки), открывается страница site.com/wp-comments-post.php, на которой текст "ОШИБКА: введите защитный код (для защиты от автоспама)" отображается кракозябрами. Т.е. сам текст находится в кодировке UTF-8, но серверу (браузеру) он отдается в кодировке WINDOWS-1251 (проверял через сервис http://www.webconfs.com/http-header-check.php).
Пробовал различные варианты, но решить проблему так и не удается.
Подскажите, пожалуйста, что можно сделать?
В .htaccess что-нибудь из этого поможет:
AddDefaultCharset UTF-8
CharsetDisable On
CharsetDefault UTF-8
CharsetSourceEnc UTF-8
CharsetRecodeMultipartForms off
Спасибо, Макс! Мне помогло.
Но вот у еще одного человека сегодня устанавливал, ни тот, ни другой вариант не помогает :(. Хостинг не знаю какой, но тоже все в UTF-8.
http://captcha.ru/kcaptcha/
и будет тебе счастье
продажа квартир аренда квартир
гыгы шучу
я заменил такую особенность.. если человек ставит сесе WP то почти всегда на сайте появляется раздел про WP, ибо это гемор
вопрос - а никак нельзя сделать проверку защитного кода при помощи AJAX, чтобы не перегружать страницу?
А то вот только что набил комментарий, и вместо b набрал d. Отослал его и в итоге пришлось жать "Back", где меня ждала пустая форма ввода:sad:
Akismet отловил уже кучу спама (75,232) со времени установки. ;)
Главное не словить, а вообще его не пропускать! ;)
Спасибо, МАХ! Классная у тебя сборка! Спам ловится на ура!
> вопрос - а никак нельзя сделать проверку защитного кода при помощи
> AJAX, чтобы не перегружать страницу?
> А то вот только что набил комментарий, и вместо b набрал d.
> Отослал его и в итоге пришлось жать "Back", где меня
> ждала пустая форма ввода :sad:
тоже интересует такая вещь , только нигде нет :sad: ...
serg! Неправда! Я такой раздел даже в планах не держал. )))
Q-Zma Скачал я сие щастье. Хм... И что с ним теперь делать? :?: Мне бы хотелось такие картинки защиты на своем блоге. Спам Карма пока справляется, но... береженого бог бережет. А акисмет у меня не пашет.:sad: Ключик активации я приобрел, но он не пашет почему-то :(
Странный вопрос, очевидно, посмотреть вовнутрь и попытаться интегрировать в wordpress. Акисмет может не работать, если на сервере хостера запрещены функции для работы с сокетами (fsokopen, например), можно посмотреть логи апача, если реально запрещены эти функции, то есть альтернативные варианты, типа замены fsokopen на pfsokopen (гыгыгы) или можно попробовать подложить сво
Странные вы вопросы задаёте, товарищ. Юзать, что ж с ним ещё делать-то? Если не разумеете как, то php.net и google.com вам в помощь. Если и это не помогло, что ж, всегда есть опытные оплачиваемые специалисты, Максим вот, например.
Акисмет может не работать если на сервере хостера запрещено использование функций для работы с сокетами (типа fsockopen), на нашем с друзьями хостинге, к примеру, была именно такая ситуация, мы вышли из неё просто: сначала заменили fsockopen на pfsockopen (хостер, видимо, не знал, что есть ещё такая функция, которая отличается от fsockopen тем, что открывает постоянное соединение :)), а чуть позже выпытали у хостера как можно сделать свой конфиг PHP, в котором эти функции разрешили. А вообще, причин может быть теува хуча, изучите error логи апача...
Спасибо.
Есть один очень простой способ избавиться от автоматического спама, без лишних вопросов пользователю, нужно скрыть одно из основных полей (имя, email), а вместо него создать свое, например так:
<input type="text" value="" name="author" style="display: none;"/><input type="text" value="" name="real-author" id="real-author"/>а в wp-comments-post.php, как можно выше вставить строки:
$spam_test_field = trim($_POST['author']);if(!empty($spam_test_field)) wp_die('Спам не пройдет.');
проверено на себе, никакого спама за 3 месяца, при этом пользователям не приходится напрягаться и разгадывать капчи, которые я считаю абсолютным злом.
Конечно, преодолеть такую проверку очень просто, но для этого нужно адаптировать спам-бота, а ведь ответить можно незначительными изменениями в коде.
Извиняюсь, забыл написать, что в файле wp-comments-post.php строку:
$comment_author = trim($_POST['author']);нужно заменить на:
$comment_author = trim($_POST['real-author']);Пока писал этот коммент с непривычки и второпях нажал Отправить, забыв про капчу, в результате пришлось писать снова, какие еще нужны доказательства ее неудобства.
Второй раз ввел неправильный защитный код (видимо кирилицей), хорошо хоть скопировал коммент в буфер
Интересненько
На способ, описанный Евгением, стоит обратить более пристальное внимание. Я аналогичным образом обрубил спам в своей гостевухе. 3 месяца уже радуюсь... :cool:
Максим, рецепт, как отшить роботов-спамеров без установки дополнительных плагинов и капч на WordPress я описал подробно на странице http://www.vwhost.org/12.html
Проверено на нескольких сайтах, где спам доходил до 2000 комментов в сутки! Работает замечательно! :cool: