我在Ubuntu 12.04上运行Apache2的Web服务器。我已安装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模块,它是否会在没有任何值的情况下完全失败?
是否有一些我遗漏的图书馆或其他东西?
如何让我的代码返回所有值,例如纬度和经度?