/*** Класс проверки и блокировки 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 ''; 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 '502 Bad Gateway'; echo ''; echo ''; echo ''; echo '

502 Bad Gateway

'; echo '

'; echo 'К сожалению, Вы временно заблокированы, из-за частого запроса страниц сайта.
'; echo 'Вам придется подождать. Через ' . $time_block . ' секунд(ы) Вы будете автоматически разблокированы.'; echo '

'; echo ''; echo ''; exit; } // Создание идентификатора активного ip-адреса if (!$is_active) { touch($path_active . $ip_address . '_' . time()); } } /** * Метод получения текущего ip-адреса из переменных сервера. */ private static function _getIp() { // ip-адрес по умолчанию $ip_address = '127.0.0.1'; // Массив возможных ip-адресов $addrs = array(); // Сбор данных возможных ip-адресов if (isset($_SERVER['HTTP_X_FORWARDED_FOR'])) { // Проверяется массив ip-клиента установленных прозрачными прокси-серверами foreach (array_reverse(explode(',', $_SERVER['HTTP_X_FORWARDED_FOR'])) as $value) { $value = trim($value); // Собирается ip-клиента if (preg_match('#^\d{1,3}.\d{1,3}.\d{1,3}.\d{1,3}$#', $value)) { $addrs[] = $value; } } } // Собирается ip-клиента if (isset($_SERVER['HTTP_CLIENT_IP'])) { $addrs[] = $_SERVER['HTTP_CLIENT_IP']; } // Собирается ip-клиента if (isset($_SERVER['HTTP_X_CLUSTER_CLIENT_IP'])) { $addrs[] = $_SERVER['HTTP_X_CLUSTER_CLIENT_IP']; } // Собирается ip-клиента if (isset($_SERVER['HTTP_PROXY_USER'])) { $addrs[] = $_SERVER['HTTP_PROXY_USER']; } // Собирается ip-клиента if (isset($_SERVER['REMOTE_ADDR'])) { $addrs[] = $_SERVER['REMOTE_ADDR']; } // Фильтрация возможных ip-адресов, для выявление нужного foreach ($addrs as $value) { // Выбирается ip-клиента if (preg_match('#^(\d{1,3}).(\d{1,3}).(\d{1,3}).(\d{1,3})$#', $value, $matches)) { $value = $matches[1] . '.' . $matches[2] . '.' . $matches[3] . '.' . $matches[4]; if ('...' != $value) { $ip_address = $value; break; } } } // Возврат полученного ip-адреса return $ip_address; } /** * Метод проверки на поискового бота. */ private static function is_bot() { if (!empty($_SERVER['HTTP_USER_AGENT'])) { $options = array( 'YandexBot', 'YandexAccessibilityBot', 'YandexMobileBot','YandexDirectDyn', 'YandexScreenshotBot', 'YandexImages', 'YandexVideo', 'YandexVideoParser', 'YandexMedia', 'YandexBlogs', 'YandexFavicons', 'YandexWebmaster', 'YandexPagechecker', 'YandexImageResizer','YandexAdNet', 'YandexDirect', 'YaDirectFetcher', 'YandexCalendar', 'YandexSitelinks', 'YandexMetrika', 'YandexNews', 'YandexNewslinks', 'YandexCatalog', 'YandexAntivirus', 'YandexMarket', 'YandexVertis', 'YandexForDomain', 'YandexSpravBot', 'YandexSearchShop', 'YandexMedianaBot', 'YandexOntoDB', 'YandexOntoDBAPI', 'Googlebot', 'Googlebot-Image', 'Mediapartners-Google', 'AdsBot-Google', 'Mail.RU_Bot', 'bingbot', 'Accoona', 'ia_archiver', 'Ask Jeeves', 'OmniExplorer_Bot', 'W3C_Validator', 'WebAlta', 'YahooFeedSeeker', 'Yahoo!', 'Ezooms', '', 'Tourlentabot', 'MJ12bot', 'AhrefsBot', 'SearchBot', 'SiteStatus', 'Nigma.ru', 'Baiduspider', 'Statsbot', 'SISTRIX', 'AcoonBot', 'findlinks', 'proximic', 'OpenindexSpider','statdom.ru', 'Exabot', 'Spider', 'SeznamBot', 'oBot', 'C-T bot', 'Updownerbot', 'Snoopy', 'heritrix', 'Yeti', 'DomainVader', 'DCPbot', 'PaperLiBot' ); foreach($options as $row) { if (stripos($_SERVER['HTTP_USER_AGENT'], $row) !== false) { return true; } } } return false; } } // Проверка текущего ip-адреса BotBlockIp::checkIp(); Nakup | Dr. Merritz | v Oroshazu - Cena: 16900 Ft
Oroshaza
Urnik: Nenehno
Urnik
Preveri: 24/7
24/7
Oroshaza
Dr. Merritz - lak za nohte proti glivicam

Dr. Merritz - lak za nohte proti glivicam

Dr. Merritz - lak za nohte proti glivicamDr. Merritz - lak za nohte proti glivicam
16900 Ft
33800 Ft
Na zalogi:
4.7 / 5
ID artikla: hu?hungary-FDN
Predviden čas dostave: 1-3 dnevi
Načini prejema paketa: Po kurirju ali po prevzemu

Oddajmo naročilo

  • Spojina
  • informacije o izdelku
  • Kako se prijaviš
  • Ocena
  • Ocene
  • Blago v drugih mestih
  • Izdelek v drugih državah
  • V drugih jezikih
  • Etil acetat
  • Butil acetat
  • Nitroceluloza
  • Acetiltributilcitrat

Indikacije za uporabo:

Od glive

Obrazec za sprostitev:

Gel

Uporabno do datuma:

2 leti

Pogoji shranjevanja:

Shranjujte pri temperaturi, ki ne presega 25 °C. Hraniti izven dosega otrok

Počitniški pogoji:

Čez pult

Glasnost:

5. 5 ml

Količina v paketu:

1 PC

Paket:

Jar

  • Na čiste nohte nanesite balzam
  • S čopičem

Ni še nobene ocene.

Bodite prvi, ki bo ocenil

Vrednost denarja
4.7
Dobavljivost v skladiščih in lekarnah
4.9
Hitrost in priročnost dostave
4.4
Razpoložljivost licenc in certifikatov za izdelke
4.9
Učinkovitost izdelka
4.8
končna ocena:
4.7

Kje lahko kupim Dr. Merritz?

Dr. Merritz bo za vas najbolj donosen nakup, če ga kupite v trgovini - Pure Natural! Naša cena za Dr. Merritz je: 16900 Ft, je pri 50% spodaj, kot katera koli druga trgovina! Na strani izdelka - Dr. Merritz podane so naslednje informacije: opis, spojina, navodilo, ocene in ocene. Naročilo lahko oddate s priročno dostavo v Oroshazu!

Vam je bila ponudba všeč?

Zagotovite si brezplačno svetovanje tako, da vnesete svoje podatke v obrazec. Povedali vam bomo vse o tem izdelku in vam ponudili najboljše pogoje ter vas obvestili o vseh trenutnih promocijah!

Počakajte na klic operaterja znotraj 5 minut

Kako opraviti nakup?
Izberite izdelek
Vnesite svoje ime in telefonsko številko
Počakajte na klic operaterja
Pridobite blago ob času, ki vam ustreza

Preverjanje izvirnosti izdelkov

Za preverjanje originalnosti izdelka vnesite kodo z embalaže.

  • adventages-icon Ugodne cene

    Trenutno imamo na naši spletni strani edinstveno akcijo, ki vsem našim strankam omogoča 50% popust na vse izdelke.

  • adventages-icon Super dostava

    V naši trgovini se trudimo, da so dobavni roki čim krajši, da boste naročilo prejeli v najkrajšem možnem času. Zahvaljujoč našim lokalnim skladiščem lahko svoje naročilo prejmete v samo nekaj dneh.

  • adventages-icon Zaupanje strank

    Prepričani ste lahko o kakovosti blaga, ki ga kupite na naši spletni strani. Vsak artikel skrbno preverimo, ali ustreza vsem standardom kakovosti, in se po svojih najboljših močeh trudimo zagotoviti vašo varnost med postopkom nakupa.

  • adventages-icon Ostajajo vprašanja?

    Ponujamo vam popolne in točne informacije, ki vam pomagajo narediti ozaveščeno izbiro. Poleg tega je naša ekipa pripravljena svetovati pri izbiri alternativnih izdelkov, če je to potrebno. Našim strankam se trudimo zagotoviti najboljšo možno storitev in podporo pri vseh vidikih nakupa.