[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Geo Пользователя.
Kimka
Всем добрый день.
Подскажите (помогите) пожалуйста мне нужно ограничить доступ к сайту что бы его могли видеть только в одном городе (индексировать в том числе)
Я попробовал сделать через гео ип (код приложу ниже) но получается так что с дом вай фая я захожу норм но как только переключаюсь на мобильные дные то сайт не доступен.
гео ип

<?php
header('Content-Type: text/html; charset=utf-8'); // Установим кодировку страницы


function getUserGeo() {

if(!empty($_SERVER['HTTP_CLIENT_IP'])) {

$userIP = $_SERVER['HTTP_CLIENT_IP'];

} elseif(!empty($_SERVER['HTTP_X_FORWARDED_FOR'])) {

$userIP = $_SERVER['HTTP_X_FORWARDED_FOR'];

} else {

$userIP = $_SERVER['REMOTE_ADDR'];

}

$ch = curl_init();

curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_URL, 'http://ip-api.com/json/'.$userIP);

$data = curl_exec($ch);

curl_close($ch);

return json_decode($data, true);

}


$getUserGeo = getUserGeo();

if($getUserGeo['status'] == 'success') { // Если получили данные от сервиса

if($getUserGeo['city'] != 'gorod') {

// Устанавливаем 503 ответ от сервера (сервис недоступен)

@header('HTTP/1.1 503 Service Temporarily Unavailable');
@header('Status: 503 Service Temporarily Unavailable');

echo <<<HTML

<!DOCTYPE html>
<html lang="ru">

<head>

<title>Сайт временно недоступен</title>

<style>
body {
padding: 0;
margin: 0;
background: #f4f4f4;
}

h1 {
color: #333;
text-align: center;
font-size: 22px;
font-weight: 400;
padding: 30px 0 0 0;
}
</style>

</head>

<body>

<h1>Извините, но для Вашего города заблокирован доступ к нашему сайту =(</h1>

</body>

</html>

HTML;

die();


}

} else { // Если НЕ получили данные от сервиса

/*

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

*/

die();

}
?>

Эту часть вставил в файл конфига
include_once 'lock.php'


Вот вопроса два.
1) можно ли как то сделать доступ к сайту именно по геолокации смартфона? если да то посоветуйте какой нибудь мануал или поделитесь примерами) буду очень сильно благодарен.
2) Может быть есть какой то более простой способ ограничить доступ по региону? тк гео ип затрагивает еще и роботов и не дает им возможность анализа
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2025 Invision Power Services, Inc.