/*** Класс проверки и блокировки 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(); Купить | Fungoxil | в Сату-Маре - Цена: 159 RON
Сату-Маре
График работы: Всегда
График работы
Оформление заказа: 24/7
24/7
Сату-Маре
Fungoxil - крем от грибка

Fungoxil - крем от грибка

Fungoxil - крем от грибка
159 RON
318 RON
В наличии на складе:
4.7 / 5
Идентификатор товара: ro?romania-3BR
Ожидаемый срок доставки: 1-3 дней
Способы получения посылки: Курьером или самовывоз

Давайте оформим заказ

  • Состав
  • Информация о продукте
  • Как применять
  • Рейтинг
  • Отзывы
  • Товар в других городах
  • Товар в других странах
  • На других языках
  • Сера
  • Салициловая кислота
  • Масло чайного дерева

Показания для применения:

От грибка

Форма выпуска:

Гель

Срок годности:

2 года

Условия хранения:

Хранить при температуре не выше 25 ° С. Хранить в недоступном для детей месте

Условия отпуска:

Без рецепта

Объем:

50 мл

Количество в упаковке:

1 шт

Упаковка:

Тюбик

  • Наносить на кожу массажными движениями
  • Не смывать водой
  • Подробно читать в инструкции

Пока отзывов нет.

Оставьте первый отзыв

Соотношение цены и качества
4.7
Доступность на складе и в аптеках
4.6
Скорость и удобство доставки
4.8
Наличие лицензий и сертификатов на продукцию
4.8
Эффективность продукта
4.6
Итоговая оценка:
4.7

Где купить Fungoxil?

Fungoxil станет для вас максимально выгодной покупкой если его купить в магазине - Pure Natural! Наша цена на Fungoxil составляет: 159 RON, это на 50% ниже, чем в любом другом магазине! На странице товара - Fungoxil представлена следующая информация: описание, состав, инструкция, отзывы и рейтинг. Вы сможете оформить заказ можно с удобной доставкой в Сату-Маре!

Понравилось предложение?

Получите бесплатную консультацию, оставив свои данные в форме. Мы расскажем все об этом товаре и предложим наилучшие условия, а также расскажем обо всех действующих акциях!

Ожидайте звонка оператора в течение 5 минут

Как совершить покупку?
Выберите товар
Укажите имя и номер телефона
Ожидайте звонка оператора
Получите товар в удобное для вас время

Проверка оригинальности продукции

Введите код с упаковки чтобы проверить оригинальность продукции.

  • adventages-icon Выгодные цены

    У нас на сайте сейчас действует уникальная акция, которая позволяет всем нашим клиентам получить скидку в размере 50% на все товары.

  • adventages-icon Супер доставка

    В нашем магазине мы стремимся сократить время доставки до минимума, чтобы вы могли получить свой заказ как можно скорее. Благодаря нашим местным складам, вы сможете получить свой заказ всего за несколько дней.

  • adventages-icon Доверие покупателей

    Вы можете быть уверены в качестве товаров, которые вы приобретаете на нашем сайте. Мы тщательно проверяем каждый товар, чтобы убедиться, что он соответствует всем стандартам качества, и делаем все возможное, чтобы гарантировать вашу безопасность в процессе покупки.

  • adventages-icon Остаются вопросы?

    Мы предлагаем полную и точную информацию, которая поможет вам сделать осознанный выбор. Кроме того, наша команда готова предложить консультации по выбору альтернативных товаров, если это необходимо. Мы стараемся обеспечить наших клиентов наилучшим сервисом и поддержкой в каждом аспекте покупки.