Держите мой небольшой класс для автобана IP при подозрительно быстрых подключениях (похожих на DoS).
Ip блокируется на уровне .htaccess (ошибка 403 для вашего IP).
В классе есть три параметра (константы)
const Interval = 0.8;
Это максимально позволенный интервал между обращениями,здесь 0.8 сек
const Limit = 5;
Это количество обращений,по которым будет проверяться не превышен ли интервал
const Dir = '/ip_logs/';
Это каталог в корне хоста,куда будут литься логи
Установка:
Просто распаковать архив в корень (появиться файл banip.class.php)
И в самый верх вашего файла подключения к бд прописать...
require $_SERVER['DOCUMENT_ROOT'].'/banip.class.php'; //подключение класса
BanIP::setConnect(); //запуск
Так же есть метод для удаления IP с бана.
//BanIP::unban('1.1.1.1');
Линк на класс http://codepad.org/i47e10il
Архив ниже..
Добавлено 13.03.15 в 13:31:54:
..........
Добавлено 13.03.15 в 13:32:20:
....
Говорю, захочешь сцайт заддосить какой нибудь,а там хоп, твоя же функа стоит на сайте,и все капут
Ну да, только я бы этим все ровно не занимался)
echo BanIP::setConnect(); //запуск
зачем echo?
satton, планировалось,что метод будет что-то ретарнить,по этому так и записал.
Могу еще добавить метод листинга заблокированных IP.
Класс вообще кому-то нужен,не?