Персональный сайт
Романа Парпалака

Заметки
 
Блог
 
Программы
 
Фото
ГлавнаяЗаметкиТехнологииВеб-разработка → Борьба с поисковым спамом

Борьба с поисковым спамом

12 декабря 2009 года

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

Для начала напомню несколько общеизвестных фактов. Во-первых, если у вас есть более-менее посещаемый ресурс, вы спокойно можете запретить анонимные комментарии и требовать регистрацию пользователей. Во-вторых, при регистрации нужно обязательно проверять электронную почту (присылать ссылку для активации аккаунта). Таким образом, почти наверняка зарегистрированный пользователь, написавший пост, не является спамерским ботом.

Некоторое время назад мы столкнулись со спамом в подписях. Это выглядело так. Регистрируется новый пользователь. Пишет тупой пост («У меня тоже эта проблема» или «Мне это помогло»). В подписи указывает ссылки на какие-то сайты (подпись отображается в профиле и автоматически добавляется к каждому посту).

Разумеется, мы стали банить таких пользователей по IP. Спамеров это не остановило. Видимо, они находили новые прокси-серверы или использовали зараженные компьютеры обычных пользователей, затем регистрировались под новыми именами и продолжали спамить.

В настройках PunBB можно отключить подписи. Но идти на поводу у спамеров — не самое хорошее решение. PunBB обладает мощной системой расширений. У нас есть расширение pun_antispam, добавляющее картинку с кодом при регистрации. Мы решили доработать это расширение, чтобы остановить спам в подписях.

Сначала сделали так, чтобы пользователь не мог задавать подпись, если у него слишком мало постов. Администратор форума мог выбирать пороговое значение. Мы остановились на трех постах. В результате вместо одного поста спамеры стали писать по три поста. Количество спама явно не уменьшилось :)

Затем я подумал и решил сделать по-другому. Во-первых, убрать запрет на ввод подписи и просто не отображать ее, если пользователь оставил слишком мало постов. Во-вторых, изменить пояснение «Вы сможете задать подпись только после того, как напишите 3 поста» на «Вы провели на форуме слишком мало времени, и поэтому ваша подпись пока не отображается в постах. Подождите немного.»

Новое пояснение никак не побуждает спамеров написать N постов, хотя именно это и требуется для того, чтобы подпись стала отображаться. Этот способ оправдал все ожидания, и спам в подписях практически прекратился. Новые пользователи со спамерскими ссылками в подписях по-прежнему регистрируются, но большинство вообще не пишет посты. Видимо, они выжидают, когда же пройдет достаточно времени :)

Для любознательных замечу, что, кроме описанного выше, потребовались дополнительные изменения. Во-первых, скрывается не только подпись новых пользователей, но и сайт. Во-вторых, если форум просматривает гость (незалогиненный пользователь), подозрительные подписи не отображаются и в профилях, чтобы поисковики их не индексировали.

В заключение еще раз похвалю систему расширений PunBB. Мы вносили все изменения, дорабатывая расширение pun_antispam и вообще не трогая код ядра форума.

Оставьте свой комментарий

Ваше имя:


Ваш e-mail:





Комментарий:

Для выделения используйте следующий код: [I]курсив[/I], [B]жирный[/B].
Цитату оформляйте так: [Q = имя автора]цитата[/Q] или [Q]еще цитата[/Q].
Ссылку начните с http://. Других команд или HTML-тегов здесь нет.


Сколько будет 51+8?


Еще в разделе «Веб-разработка»:
Посмотрите в блоге:
спам

Блог о кино

наверх