Защита phpbb от регистрации ботов и спама

Очень долго бился с тем как закрыть доступ ботам к своим форумам на phpbb. Все встроенные средства естественно не помогают. Установка активации аккаунта по email, ограничение сообщений для новых пользователей не помогало. Даже самый не любимый способ установка recaptcha и то не помог в этом деле. Когда количество спама начало превышать 20 сообщений в день решил искать кардинальное решение этой проблемы.

Основная масса ботов использует просто набор решений для стандартной защиты и любое свое решение отличающееся от стандартного может практически полностью избавить ваш форум от спам сообщений которые производят роботы. Естественно полностью от спама избавится не возможно так как очень настырные вэбмастера если им надо будет просто сами зарегистрируются и запостят сообщение с ссылкой на продвигаемый ресурс.

Итак решение для версии 3 движка phpbb прописать в низу файла config.php следующий код:

if (isset($_POST['password_confirm']) && isset($_POST['tz'])){ // Пришел запрос на регистрацию
    if(
        $_POST['tz'] == -12 || // Нереальная временная зона которую по умолчанию отправляют роботы
        ($_POST['lang'] == 'en' && $_POST['change_lang'] != 'en') || // Изменен основной язык, но change_lang при это не изменен
        ($_POST['lang'] == 'en' && $_POST['submit'] == 'Отправить') // Язык вроде английский, а кнопка почему-то русская
    ){
        header("HTTP/1.1 404 Not Found");
        exit;
    }
}

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

Комментарии

Популярные сообщения из этого блога

Две сетевые карты Windows 7. Настройка маршрутизации

Cisco Packet Tracer + Русификатор

Восстановление конфигурации Cisco с tftp сервера