/*** Класс проверки и блокировки ip-адреса. */ class BotBlockIp { /*** Время блокировки в секундах. */ const blockSeconds = 60; /** * Интервал времени запросов страниц. */ const intervalSeconds = 1; /** * Количество запросов страницы в интервал времени. */ const intervalTimes = 4; /** * Флаг подключения всегда активных пользователей. */ const isAlwaysActive = true; /** * Флаг подключения всегда заблокированных пользователей. */ const isAlwaysBlock = true; /** * Путь к директории кэширования активных пользователей. */ const pathActive = 'active'; /** * Путь к директории кэширования заблокированных пользователей. */ const pathBlock = 'block'; /** * Флаг абсолютных путей к директориям. */ const pathIsAbsolute = false; /** * Список всегда активных пользователей. */ public static $alwaysActive = array( ); /** * Список всегда заблокированных пользователей. */ public static $alwaysBlock = array( ); /** * Метод проверки ip-адреса на активность и блокировку. */ public static function checkIp() { // Если это поисковый бот, то выходим ничего не делая if(self::is_bot()){ return; } // Получение ip-адреса $ip_address = self::_getIp(); // Пропускаем всегда активных пользователей if (in_array($ip_address, self::$alwaysActive) && self::isAlwaysActive) { return; } // Блокируем всегда заблокированных пользователей if (in_array($ip_address, self::$alwaysBlock) && self::isAlwaysBlock) { header('HTTP/1.0 403 Forbidden'); echo ''; echo ''; echo '
'; echo '';
echo 'Вы заблокированы администрацией ресурса.
';
exit;
}
// Установка путей к директориям
$path_active = self::pathActive;
$path_block = self::pathBlock;
// Приведение путей к директориям к абсолютному виду
if (!self::pathIsAbsolute) {
$path_active = str_replace('\\' , '/', dirname(__FILE__) . '/' . $path_active . '/');
$path_block = str_replace('\\' , '/', dirname(__FILE__) . '/' . $path_block . '/');
}
// Проверка возможности записи в директории
if (!is_writable($path_active)) {
die('Директория кэширования активных пользователей не создана или закрыта для записи.');
}
if (!is_writable($path_block)) {
die('Директория кэширования заблокированных пользователей не создана или закрыта для записи.');
}
// Проверка активных ip-адресов
$is_active = false;
if ($dir = opendir($path_active)) {
while (false !== ($filename = readdir($dir))) {
// Выбирается ip + время активации этого ip
if (preg_match('#^(\d{1,3}.\d{1,3}.\d{1,3}.\d{1,3})_(\d+)$#', $filename, $matches)) {
if ($matches[2] >= time() - self::intervalSeconds) {
if ($matches[1] == $ip_address) {
$times = intval(trim(file_get_contents($path_active . $filename)));
if ($times >= self::intervalTimes - 1) {
touch($path_block . $filename);
unlink($path_active . $filename);
} else {
file_put_contents($path_active . $filename, $times + 1);
}
$is_active = true;
}
} else {
unlink($path_active . $filename);
}
}
}
closedir($dir);
}
// Проверка заблокированных ip-адресов
$is_block = false;
if ($dir = opendir($path_block)) {
while (false !== ($filename = readdir($dir))) {
// Выбирается ip + время блокировки этого ip
if (preg_match('#^(\d{1,3}.\d{1,3}.\d{1,3}.\d{1,3})_(\d+)$#', $filename, $matches)) {
if ($matches[2] >= time() - self::blockSeconds) {
if ($matches[1] == $ip_address) {
$is_block = true;
$time_block = $matches[2] - (time() - self::blockSeconds) + 1;
}
} else {
unlink($path_block . $filename);
}
}
}
closedir($dir);
}
// ip-адрес заблокирован
if ($is_block) {
header('HTTP/1.0 502 Bad Gateway');
echo '';
echo '';
echo '
';
echo 'К сожалению, Вы временно заблокированы, из-за частого запроса страниц сайта.
';
echo 'Вам придется подождать. Через ' . $time_block . ' секунд(ы) Вы будете автоматически разблокированы.';
echo '
Muda wa kazi: 24/7
|
Kukubalika kwa maombi: 24/7
Capenguria
Dalili za matumizi:
Kwa kusikia
Fomu ya kutolewa:
Vidonge
Bora kabla ya tarehe:
Miaka 2
Masharti ya kuhifadhi:
Hifadhi kwa joto lisilozidi 25 ° C. Weka mbali na watoto
Masharti ya likizo:
Bila mapishi
Kiasi katika kifurushi:
Vidonge - 20 pcs
Kifurushi:
Malengelenge
Nunua Acuflex na utoaji wa barua huko Kapenguria unaweza kwenye tovuti yetu - PayLike. Bei ya sasa na punguzo zote - 5990 KSh! Acuflex - dawa ya afya ya sikio daima katika hisa! Ushauri wa bure juu ya maswala yoyote yanayohusiana na sluh!
Acha maelezo yako ili mtaalamu wetu aweze kuwasiliana nawe. Utapokea mashauriano ya bure kuhusu bidhaa hii, na pia utafahamu matoleo ya kipekee ya utangazaji!
Tarajia simu ndani 5-15 dakika
Weka msimbo wa DAT ili kuthibitisha uhalisi wa bidhaa.
Kwenye tovuti yetu, ununuzi daima ni faida, kwa sababu tunapenda kupendeza wateja wetu na matangazo ya kuvutia ya mara kwa mara na punguzo.
Tunajaribu kutoa maagizo haraka na kwa uhakika iwezekanavyo. Kwa wastani, utapokea agizo lako siku 3 baada ya kuwekwa kwenye tovuti yetu kwa shukrani kwa mtandao wetu wa ghala katika nchi yako.
Lengo kuu la tovuti yetu ni kuridhika kwako. Tunakuhakikishia ubora wa bidhaa unazonunua kutoka kwetu na kuhakikisha usalama wa ununuzi wako. Daima tunajitahidi kuboresha huduma zetu ili upate matumizi bora tu kutoka kwa duka letu.
Moja ya faida kuu za tovuti yetu ni ushauri wa kitaalamu kabla ya kununua kila bidhaa. Tunaelewa kuwa kila mteja ni wa kipekee, na kila mmoja ana sifa na mahitaji yake. Kwa hiyo, tunatoa fursa ya kupokea ushauri wenye sifa kutoka kwa wataalamu ambao watakusaidia kuchagua bidhaa inayofaa kwako.