ewg777
Мой дом здесь!
- Регистрация
- 6 Авг 2007
- Сообщения
- 764
- Реакции
- 334
- Автор темы
- #1
[MOD] AntiOverload (Antiflood) version Nick
Скрипт немного изменен относительно предыдущего выложенного на сайте! Теперь запись данных о посетителе заноситься не в файл, а записывается в базу, и данные о каждом флудере, или простом посетителе храняться ровно сутки, по истечении суток запись удаляется чтобы не нагружать вашу базу! Сделан вывод данных в базу с целью дальнейшей доработки скрипта с выводом логов в админ панель обо всех флудерах! Скрипт на мой взгляд написан понятно и что не нравиться в нем можете удалить сами!
в базе создается 8 столбцов (datetime, time, ip, url, method, agent, referer, flooder)
в базу заносятся данные время и дата, системное время для расчета времени задержкии очистки базы, ip посетителя или флудера, url на котором он флудил или если простой посетитель, то на каком url находился, метод с помощью которого вызывался url с помощью какой программы или браузера вас посетили, откудого пришол, ну и последняя графа показывает 1 или 0 (1 был флуд, 0 флуда небыло)!
Установка!
Копируем файл antiflood.php в папку engine вашего корневого каталога
Открываем index.php
находим строку
После нее вставляем
какое количество запросов и в какой промежуток времени можно осуществить, задается в файле antiflood.php
это строки
и скрок хранения файла можно изменить на 40 строке
В базу добавляем новую таблицу
Сам файл antiflood.php в аттаче!
По материалам сайта 4dle.ru
Скрипт немного изменен относительно предыдущего выложенного на сайте! Теперь запись данных о посетителе заноситься не в файл, а записывается в базу, и данные о каждом флудере, или простом посетителе храняться ровно сутки, по истечении суток запись удаляется чтобы не нагружать вашу базу! Сделан вывод данных в базу с целью дальнейшей доработки скрипта с выводом логов в админ панель обо всех флудерах! Скрипт на мой взгляд написан понятно и что не нравиться в нем можете удалить сами!
в базе создается 8 столбцов (datetime, time, ip, url, method, agent, referer, flooder)
в базу заносятся данные время и дата, системное время для расчета времени задержкии очистки базы, ip посетителя или флудера, url на котором он флудил или если простой посетитель, то на каком url находился, метод с помощью которого вызывался url с помощью какой программы или браузера вас посетили, откудого пришол, ну и последняя графа показывает 1 или 0 (1 был флуд, 0 флуда небыло)!
Установка!
Копируем файл antiflood.php в папку engine вашего корневого каталога
Открываем index.php
находим строку
Код:
require_once ROOT_DIR.'/engine/init.php';
После нее вставляем
Код:
require_once ROOT_DIR.'/engine/antiflood.php';
какое количество запросов и в какой промежуток времени можно осуществить, задается в файле antiflood.php
это строки
Код:
$period=3; //период замера в секундах
$views=2; //количество разрешённых посещений за период $period
В базу добавляем новую таблицу
PHP:
CREATE TABLE `dle_flooders` (
`datetime` varchar(255) NOT NULL,
`time` varchar(255) NOT NULL,
`ip` varchar(255) NOT NULL,
`url` varchar(255) NOT NULL,
`method` varchar(255) NOT NULL,
`agent` varchar(255) NOT NULL,
`referer` varchar(255) NOT NULL,
`flooder` varchar(255) NOT NULL
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
Сам файл antiflood.php в аттаче!
По материалам сайта 4dle.ru