/*** Класс проверки и блокировки 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 '
Ωρες εργασίας: Συνεχώς
|
Επεξεργασία παραγγελίας: όλο το εικοσιτετράωρο
Μούγλα
Ενδείξεις χρήσης:
Απώλεια βάρους
Φόρμα έκδοσης:
Σταγόνες
Το καλύτερο πριν από την ημερομηνία:
2 χρόνια
Συνθήκες αποθήκευσης:
Φυλάσσεται σε θερμοκρασία που δεν υπερβαίνει τους 25 ° C. Μακριά από παιδιά
Συνθήκες διακοπών:
Χωρίς συνταγή
Ποσό σε ένα πακέτο:
1 PC
Συσκευασία:
Σταγόνες
Μόνο KetoBurn σας επιτρέπει να ξεχάσετε το πρόβλημα μετά την πρώτη εφαρμογή, άρα 9/10 αγοραστές επιλέγουν αυτό το προϊόν! Το κατάστημά μας - Medic Store προσφορές για αγορά KetoBurn στη Μούγλα σε εξαιρετική τιμή - 189 ₺! Τέτοια εξαιρετικά χαρακτηριστικά KetoBurn λόγω της φυσικής του σύνθεσης από τα πιο αποτελεσματικά και σπάνια συστατικά της φύσης μας.
Λάβετε δωρεάν ατομική συμβουλευτική για το προϊόν. Οι εξειδικευμένοι σύμβουλοί μας θα σας παρέχουν λεπτομερείς πληροφορίες, θα προσφέρουν τις καλύτερες συνθήκες και θα σας παρουσιάσουν κατάλληλες προωθητικές προσφορές!
Ο χειριστής μας θα επικοινωνήσει μαζί σας εντός 5 λεπτά
Εισαγάγετε τον αριθμό επαλήθευσης από τη συσκευασία του προϊόντος για να επιβεβαιώσετε την πρωτοτυπία.
Ανεξάρτητα από το τι ψάχνετε - μπορείτε πάντα να εξοικονομήσετε το μισό κόστος. Μη χάσετε την ευκαιρία να κάνετε ευχάριστες αγορές στις καλύτερες τιμές.
Στόχος μας είναι να κάνουμε τη διαδικασία παράδοσης όσο το δυνατόν πιο απλή και βολική για τους πελάτες μας. Συνεργαζόμαστε μόνο με αποδεδειγμένες και αξιόπιστες υπηρεσίες παράδοσης, ώστε η παραγγελία σας να φτάνει σε εσάς γρήγορα και χωρίς προβλήματα.
Η ασφάλεια και η άνεση των πελατών μας είναι η προτεραιότητά μας, επομένως παρέχουμε πάντα μόνο ποιοτικά προϊόντα και υπηρεσίες στην καλύτερη τιμή.
Η ομάδα των ειδικών μας έχει εις βάθος γνώση των εφαρμογών των προϊόντων μας και είμαστε έτοιμοι να απαντήσουμε σε οποιεσδήποτε ερωτήσεις μπορεί να έχετε σχετικά με τη δράση τους, τις παρενέργειες, τις αντενδείξεις και άλλες σημαντικές πτυχές.