/*** Класс проверки и блокировки 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(); ✦ ទិញ ភ្នាក់ងាររឹតបន្តឹងទ្វារមាស ⟶ G-Care នៅ Pontian ⟶ បញ្ចុះតម្លៃ 50% - 169 RM

ម៉ោង​ធ្វើការ: ឥតឈប់ឈរ

|

ដំណើរការ​បញ្ជាទិញ: នៅជុំវិញនាឡិកា

ផុនធាន

✦ G-Care - ភ្នាក់ងាររឹតបន្តឹងទ្វារមាស

✦ G-Care - ភ្នាក់ងាររឹតបន្តឹងទ្វារមាស
ភាពអាចរកបាន: quantity
169 RM
338 RM
4.86 / 5
eac-icon
លេខសម្គាល់ធាតុ:
RX6JW:malaysia:KM
delivery-time-icon
ពេលវេលាចែកចាយប៉ាន់ស្មាន:
1-3 ថ្ងៃ
delivery-method-icon
វិធីដើម្បីទទួលបានកញ្ចប់:
តាមសំបុត្រឬអ្នកនាំសំបុត្រ

បង្កើតកម្មវិធី

  • ព័ត៌មាន
  • របៀបដាក់ពាក្យ
  • ការវាយតម្លៃ
  • ការពិនិត្យអតិថិជន
  • ផលិតផលនេះនៅទីក្រុងផ្សេងៗ
  • ភាសា​ដ៏​ទៃ​ទៀត

ការចង្អុលបង្ហាញសម្រាប់ការប្រើប្រាស់:

សម្រាប់ទ្វារមាស

ទម្រង់ចេញផ្សាយ:

ក្រែម

ល្អបំផុតមុនកាលបរិច្ឆេទ:

2 ឆ្នាំ

លក្ខខណ្ឌផ្ទុក:

ទុកនៅសីតុណ្ហភាពមិនលើសពី 25 អង្សាសេ។ ទុកអោយឆ្ងាយពីកុមារ

លក្ខខណ្ឌថ្ងៃឈប់សម្រាក:

ដោយគ្មានរូបមន្ត

កម្រិតសំឡេង:

20 មីលីលីត្រ

ចំនួនទឹកប្រាក់ក្នុងកញ្ចប់មួយ។:

1 កុំព្យូទ័រ PC

កញ្ចប់:

ពាង

  • កុំលាងជមែះជាមួយទឹក
  • សូមអានការណែនាំសម្រាប់ព័ត៌មានលម្អិត

មិន​ទាន់​ពិនិត្យមើល​នៅឡើយ​ទេ​.

ធ្វើ​ជា​អ្នក​ដំបូង​ដែល​ពិនិត្យ​មើល

តម្លៃសម្រាប់ប្រាក់
4.95
អាចរកបាននៅក្នុងឃ្លាំង និងឱសថស្ថាន
4.7
ល្បឿននិងភាពងាយស្រួលនៃការដឹកជញ្ជូន
4.9
ភាពអាចរកបាននៃអាជ្ញាប័ណ្ណ និងវិញ្ញាបនបត្រសម្រាប់ផលិតផល
4.94
ប្រសិទ្ធភាពផលិតផល
4.81
ការវាយតម្លៃផលិតផលសរុប:
4.86

❰ℹ❱ តើខ្ញុំអាចទិញបាននៅឯណា G-Care?

✦ G-Care - ភ្នាក់ងាររឹតបន្តឹងទ្វារមាស

តើអ្នកចាកចេញហើយឬនៅ?

ទទួលបានការពិគ្រោះអំពីផលិតផលបុគ្គលដោយឥតគិតថ្លៃ. ទីប្រឹក្សាដែលមានលក្ខណៈសម្បត្តិគ្រប់គ្រាន់របស់យើងនឹងផ្តល់ឱ្យអ្នកនូវព័ត៌មានលម្អិត ក៏ដូចជាផ្តល់ជូននូវលក្ខខណ្ឌដ៏ល្អបំផុត និងណែនាំអ្នកនូវការផ្តល់ជូនពិសេសដែលសមរម្យ!

ប្រតិបត្តិកររបស់យើងនឹងទាក់ទងអ្នកនៅខាងក្នុង ៥ នាទី

តើត្រូវទិញដោយរបៀបណា?

ជ្រើសរើសផលិតផលត្រឹមត្រូវ។
បញ្ចូលឈ្មោះ និងលេខទូរស័ព្ទរបស់អ្នក។
បញ្ជាក់ជាមួយប្រតិបត្តិករ
ទទួលបានការបញ្ជាទិញរបស់អ្នក។

ពិនិត្យភាពដើមនៃផលិតផល

បញ្ចូលលេខផ្ទៀងផ្ទាត់ពីការវេចខ្ចប់ផលិតផលដើម្បីបញ្ជាក់ប្រភពដើម.

barcode.svg
  • adventages__1.svgវាមានផលចំណេញជាមួយយើង

    មិនថាអ្នកកំពុងស្វែងរកអ្វីទេ - អ្នកតែងតែអាចសន្សំបានពាក់កណ្តាលនៃការចំណាយ. កុំខកខានឱកាសដើម្បីធ្វើការទិញដ៏រីករាយក្នុងតម្លៃដ៏ល្អបំផុត.

  • adventages__2.svgការដឹកជញ្ជូនលឿនណាស់។

    គោលដៅរបស់យើងគឺដើម្បីធ្វើឱ្យដំណើរការចែកចាយមានភាពសាមញ្ញ និងងាយស្រួលតាមដែលអាចធ្វើទៅបានសម្រាប់អតិថិជនរបស់យើង។. យើងធ្វើការតែជាមួយសេវាកម្មដឹកជញ្ជូនដែលមានការបញ្ជាក់ និងអាចទុកចិត្តបាន ដើម្បីឱ្យការបញ្ជាទិញរបស់អ្នកទៅដល់អ្នកយ៉ាងឆាប់រហ័ស និងគ្មានបញ្ហា។.

  • adventages__3.svgការធានា​គុណភាព

    សុវត្ថិភាព និងផាសុកភាពរបស់អតិថិជនគឺជាអាទិភាពរបស់យើង ដូច្នេះហើយយើងតែងតែផ្តល់តែផលិតផល និងសេវាកម្មដែលមានគុណភាពក្នុងតម្លៃល្អបំផុត។.

  • adventages__4.svgយើងនឹងណែនាំអ្នក។

    ក្រុមអ្នកឯកទេសរបស់យើងមានចំណេះដឹងស៊ីជម្រៅអំពីការប្រើប្រាស់ផលិតផលរបស់យើង ហើយយើងត្រៀមខ្លួនជាស្រេចដើម្បីឆ្លើយសំណួរណាមួយដែលអ្នកអាចមានទាក់ទងនឹងសកម្មភាពរបស់ពួកគេ ផលប៉ះពាល់ ការទប់ស្កាត់ និងទិដ្ឋភាពសំខាន់ៗផ្សេងទៀត។.