Задать вопрос
@Nohaga

Почему не срабатывает geoip?

$ip = \Bitrix\Main\Service\GeoIp\Manager::getRealIp(); 
$geoIpData = \Bitrix\Main\Service\GeoIp\Manager::getDataResult($ip,'ru');
$cityName = \Bitrix\Main\Service\GeoIp\Manager::getCityName($ip,'ru');

GEOip установлен, Рабочий стол - Настройки- Настройки продукта- Геолокация, написано что он активен, хотя в настройках модулей нет его настроек.

$ip определяется по коду выше, а $cityName нет, пустая переменная, какие могут быть причины? Страна тоже не определяется.
  • Вопрос задан
  • 1506 просмотров
Подписаться 1 Средний Комментировать
Пригласить эксперта
Ответы на вопрос 2
@kudis
Bitrix developer
Я спешу Вас разочаровать, вся геолокация на основе IP, сродни астрологии - точность такая же.
Необходимо проверить какой модуль у вас активен здесь: `/bitrix/admin/geoip_handlers_list.php`
Вероятно модули неактивны, либо активный модуль не придерживается интерфейса, либо вы исчерпали бесплатный лимит и нужно ввести токен.
Пишите, могу помочь с интеграцией какого-нибудь открытого справолчника!
Но, повторюсь, по IP можно детектить, только пользователей наземных провайдеров. Львиная доля клиентов приходит с ОпСоСов, а там IP не значит ничего.
Ответ написан
Комментировать
Вот простая библиотека для реализации GeoIp в битрикс, без лимитов и простой настройкой blog.ivru.net/?id=82
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы