2015-08-29 2 views
0

У меня есть веб-сервер под управлением Apache2 на Ubuntu 12.04. Я установил geoip-database, libapache2-mod-geoip1.2.5-2, libgeoip1 1.4.8+dfsg-2 и php5-geoip.Почему возвращаются только некоторые из этих значений геоида?

Я поставил этот тестовый код PHP на моем сервере:

<?php 
echo "country: " . apache_note("GEOIP_COUNTRY_NAME") . '<br>'; 
echo "code: " . apache_note("GEOIP_COUNTRY_CODE") . '<br>'; 
echo "city: " . apache_note("GEOIP_CITY") . '<br>'; 
echo "region: " . apache_note("GEOIP_REGION") . '<br>'; 
echo "latitude: " . apache_note("GEOIP_LATITUDE") . '<br>'; 
echo "longitude: " . apache_note("GEOIP_LONGITUDE") . '<br>'; 
echo "timezone: " . geoip_time_zone_by_country_and_region($this->countryCode, $this->region); 

Когда я получить доступ к нему в моем браузере, я получаю этот выход:

country: Japan 
code: JP 
city: 
region: 
latitude: 
longitude: 
timezone: 

Я смущен тем фактом, что только два значения возвращаются. Если модуль GeoIP не был установлен правильно, не будет ли он полностью завершен без каких-либо значений?

Есть ли библиотеки или что-то, что мне не хватает?

Как получить код для возврата всех значений, таких как широта и долгота?

ответ

1

Возможно, вы используете бесплатную базу данных GeoLite. Эта база данных содержит только сведения о стране.

Базы данных, содержащие более подробную информацию, такую ​​как широта и долгота, доступны на Maxmind на платной основе.

+0

Это всегда так? Я был уверен, что в прошлом я мог получить широту и долготу, не покупая ничего. – Questioner

+0

Я не знаю, было ли это всегда *, но если нет, так было в течение очень долгого времени (например, 5-10 лет). В конце концов, Максминд не является благотворительностью. – duskwuff

Смежные вопросы