Доброе утро, Гость! Представляем Вам наши форумы. Вы можете зарегистрироваться чтобы писать на форумах или зайдите под своим именем, если Вы уже регистрировались.
   
   


Форум
 SX CMS / Техническая помощь
         запретить доступ к сайту для иностранных IP адресов

Похожие темы

запретить доступ к сайту для иностранных IP адресов


События Среда, 23.04.2025, 22:34

NAME

Группа: Пользователь
Ранг: Продвинутый
Cообщений: 140
Регистрация: 11.03.2010
Город: AREA51
Все привет.
Может кто подскажет как адаптировать код под статус, версия 1,05
Спойлер

Код

// Получаем текущий URL страницы
$request_uri = $_SERVER['REQUEST_URI'];

// Если это главная страница (URI == '/'), выводим заглушку
if ($request_uri == '/') {
echo file_get_contents('https://адрес-сайта/access-denied.html');
exit;
}

// Если не главная страница, проверяем IP
$ip = $_SERVER['REMOTE_ADDR'];

// URL для получения информации о стране
$api_url = "http://ipinfo.io/{$ip}?token=ВАШ_ТОКЕН"; // Регистрируемся на http://ipinfo.io/ и получаем токен, бесплатно у нас есть 50000 запросов

// Инициализация CURL для запроса
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $api_url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$response = curl_exec($ch);

// Проверяем, был ли успешный ответ от API
if ($response === false) {
echo 'Ошибка при получении данных о стране';
exit;
}

// Декодируем JSON ответ
$data = json_decode($response, true);

// Получаем код страны из ответа
$country_code = $data['country'] ?? '';

// Если страна не Россия, выводим заглушку и прекращаем выполнение скрипта
if ($country_code !== 'RU') {
echo file_get_contents('https://адрес-сайта/access-denied.html');
exit;
}





Пользователь офлайн


Похожие темы  |   Следующая тема

Быстрый переход:  
 

 Сейчас на сайте

Пользователей: 0, Гостей: 6

Поисковые боты: 46
Bot(33), Crawler(2), BingBot(5), oBot(5), Yandex
 Статистика форума

  Темы Сообщения Пользователи
За сутки:
За неделю:
За месяц:
Всего:
Мы приветствуем нового участника: vasya111
 Дни рождения

Marley (77), Chinare Hesenova (40), palekhoff (33)
Copyright © 2009 - 2024 SX All rights reserved | Powered by SX CMS 1.06 UTF | Контакты