Защита самописного сайта на PHP от ботов
Самописному сайту защита нужна не меньше, чем магазину на CMS: формы без капчи, свои админки и каталоги, о которых боты узнают из логов чужих сканеров.
Что обычно болит на Свой сайт на PHP
- Спам через формы, которые собирали сами
- Перебор паролей в своей админке
- Парсинг каталогов и справочников
- Сканирование забытых скриптов и резервных копий
Как подключить
-
1
Положите модуль
Папка botban/ в корне сайта.
-
2
Один входной файл
Если все запросы идут через index.php с маршрутизацией — вызов в его начало.
<?php require_once __DIR__ . '/botban/botban.php'; BotBan::protect('bb_pk_...', 'bb_sk_...'); // дальше ваш код: сессии, настройки, вывод -
3
Много отдельных файлов
Если страницы — отдельные PHP-файлы, добавьте вызов в общий файл с настройками, который есть в каждом из них. Главное — до любого вывода в браузер.
-
4
Или без правки кода
На любом сайте можно подключить модуль через auto_prepend_file — тогда он встанет перед всеми скриптами сразу. Подробнее на отдельной странице.
На что обратить внимание
До вывода — обязательно
Модуль должен успеть отдать заголовки. Если где-то перед вызовом есть echo или пробел до <?php, модуль тихо пропустит посетителя.
Проверьте botban.off
Аварийный выключатель работает и здесь: пустой файл botban.off рядом с модулем отключает защиту без обращения к нам.