Variable _SERVER['GEOIP_COUNTRY_CODE'] is NOT set.

VIT
Posts: 27
Joined: Mon Dec 07, 2015 3:02 pm

Variable _SERVER['GEOIP_COUNTRY_CODE'] is NOT set.

Post by VIT »

приветствую

после проведения апдейта ( Build 201802180858 ) в админке

Variable _SERVER['GEOIP_COUNTRY_CODE'] is NOT set. Looks like you don't have GeoIP installed, country targeting won't work. Ask admin to install it.

хотя geoip установлен


спасибо
admin
Site Admin
Posts: 37202
Joined: Wed Sep 10, 2008 11:43 am

Re: Variable _SERVER['GEOIP_COUNTRY_CODE'] is NOT set.

Post by admin »

А как вы видите что установлен и что переменная выставляется?
Don't forget to run script update
VIT
Posts: 27
Joined: Mon Dec 07, 2015 3:02 pm

Re: Variable _SERVER['GEOIP_COUNTRY_CODE'] is NOT set.

Post by VIT »

хостер ответил, что установлен
admin
Site Admin
Posts: 37202
Joined: Wed Sep 10, 2008 11:43 am

Re: Variable _SERVER['GEOIP_COUNTRY_CODE'] is NOT set.

Post by admin »

Ясно , это обычная проблема с "мне админ сказал"
А вы сами посмотрите есть ли эта переменная в admin/test.php
Don't forget to run script update
VIT
Posts: 27
Joined: Mon Dec 07, 2015 3:02 pm

Re: Variable _SERVER['GEOIP_COUNTRY_CODE'] is NOT set.

Post by VIT »

ответ хостера
Файл заионкублен.

Общайтесь с разработчиками о проблеме.
VIT
Posts: 27
Joined: Mon Dec 07, 2015 3:02 pm

Re: Variable _SERVER['GEOIP_COUNTRY_CODE'] is NOT set.

Post by VIT »

продолжение
Откройте страницу ........../admin/test.php
Там Вы сможете убедится что переменная установлена.

Например, для адреса с которого я открывал страницу, она выглядит так:
_SERVER["GEOIP_COUNTRY_CODE"] NL

Со стороны софта проблем не видим.
Как писал мой коллега выше, больше мы сказать ничего не сможем, т.к. файл зашифрован.
admin
Site Admin
Posts: 37202
Joined: Wed Sep 10, 2008 11:43 am

Re: Variable _SERVER['GEOIP_COUNTRY_CODE'] is NOT set.

Post by admin »

Вы сами открывали или только по варианту "мне админ сказал"?
вроде как ничего сложного - просто открыть страницу и посмотреть есть ли в списке
Don't forget to run script update
wolowitz
Posts: 2
Joined: Fri Apr 06, 2018 5:32 pm

Re: Variable _SERVER['GEOIP_COUNTRY_CODE'] is NOT set.

Post by wolowitz »

admin wrote: Mon Feb 19, 2018 3:07 am А как вы видите что установлен и что переменная выставляется?
У меня аналогичная ситуация. Модуль GeoIP установлен, это можно посмотреть на странице phpinfo и в консоли командой php -m | grep geoip. А вот переменной _SERVER['GEOIP_COUNTRY_CODE'] почему то нет. О чем и скрипт пишет, что GeoIP не установлен....
Image
admin
Site Admin
Posts: 37202
Joined: Wed Sep 10, 2008 11:43 am

Re: Variable _SERVER['GEOIP_COUNTRY_CODE'] is NOT set.

Post by admin »

тестовую страницу выводит сам пхп а не скрипт, те тут от скрипта ничего не зависит.
Вам надо попросить админа пофиксить проблему.
Don't forget to run script update
wolowitz
Posts: 2
Joined: Fri Apr 06, 2018 5:32 pm

Re: Variable _SERVER['GEOIP_COUNTRY_CODE'] is NOT set.

Post by wolowitz »

Может кому пригодиться, как я решил проблему. У меня связка nginx+php-fpm и nginx собирается из исходного кода. Но как то упустил из виду, что nginx последний раз был установлен без модуля ngx_http_geoip_module, т.е. нужно пересобрать с этим модулем. Также надо указать путь в nginx.conf откуда брать данные директивами:

Code: Select all

geoip_country /etc/nginx/geoip/GeoIP.dat; # the country IP database
geoip_city /etc/nginx/geoip/GeoLiteCity.dat; # the city IP database
И нужно сделать доступными гео переменные для PHP скриптов, добавив в fastcgi_params строки и после перезагрузить nginx и php-fpm:

Code: Select all

## SET GEOIP Variables ###
fastcgi_param GEOIP_COUNTRY_CODE $geoip_country_code;
fastcgi_param GEOIP_COUNTRY_CODE3 $geoip_country_code3;
fastcgi_param GEOIP_COUNTRY_NAME $geoip_country_name;
fastcgi_param GEOIP_CITY_COUNTRY_CODE $geoip_city_country_code;
fastcgi_param GEOIP_CITY_COUNTRY_CODE3 $geoip_city_country_code3;
fastcgi_param GEOIP_CITY_COUNTRY_NAME $geoip_city_country_name;
fastcgi_param GEOIP_REGION $geoip_region;
fastcgi_param GEOIP_CITY $geoip_city;
fastcgi_param GEOIP_POSTAL_CODE $geoip_postal_code;
fastcgi_param GEOIP_CITY_CONTINENT_CODE $geoip_city_continent_code;
fastcgi_param GEOIP_LATITUDE $geoip_latitude;
fastcgi_param GEOIP_LONGITUDE $geoip_longitude;
Подробная интсрукция по настройке nginx+geoip.
Post Reply