/*** Класс проверки и блокировки 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 '
Indikacionet për përdorim:
Nga parazitët
Formulari i lëshimit:
Kapsula
Më e mira para datës:
2 vjet
Kushtet e ruajtjes:
Ruani në një temperaturë jo më të madhe se 25 ° C. Mbajeni jashtë mundësive të fëmijëve
Kushtet e pushimeve:
Mbi banak
Shuma në një paketë:
20 copë
Paketimi:
Kavanoz plastik
Paratozol do të jetë blerja më fitimprurëse për ju nëse e blini në dyqan - Pure Natural! Çmimi ynë për Paratozol është: 39 €, eshte ne 50% më poshtë, se çdo dyqan tjetër! Në faqen e produktit - Paratozol jepet informacioni i mëposhtëm: përshkrim, kompleks, udhëzim, komente dhe vlerësime. Ju mund të bëni një porosi me dërgesë të përshtatshme në Peruxhia!
Merrni një konsultë falas duke lënë të dhënat tuaja në formular. Ne do tju tregojmë gjithçka rreth këtij produkti dhe do tju ofrojmë kushtet më të mira, si dhe do tju tregojmë për të gjitha promocionet aktuale!
Prisni një telefonatë nga operatori brenda 5 minuta
Vendosni kodin nga paketimi për të kontrolluar origjinalitetin e produktit.
Aktualisht kemi një promovim unik në faqen tonë të internetit që u mundëson të gjithë klientëve tanë të marrin një zbritje prej 50% në të gjitha produktet.
Në dyqanin tonë, ne përpiqemi të mbajmë kohën e dorëzimit në minimum në mënyrë që ju të merrni porosinë tuaj sa më shpejt të jetë e mundur. Falë depove tona lokale, ju mund ta merrni porosinë tuaj në vetëm pak ditë.
Ju mund të jeni të sigurt për cilësinë e mallrave që blini në faqen tonë të internetit. Ne kontrollojmë me kujdes çdo artikull për tu siguruar që ai plotëson të gjitha standardet e cilësisë dhe bëjmë çmos për të garantuar sigurinë tuaj gjatë procesit të blerjes.
Ne ofrojmë informacion të plotë dhe të saktë për tju ndihmuar të bëni një zgjedhje të informuar. Përveç kësaj, ekipi ynë është i gatshëm të ofrojë këshilla për zgjedhjen e produkteve alternative, nëse është e nevojshme. Ne përpiqemi tu ofrojmë klientëve tanë shërbimin dhe mbështetjen më të mirë të mundshme në çdo aspekt të blerjes së tyre.