Apache-2.2
php geoip 在 ubuntu 18.04 上不起作用
我無法讓 GeoIP PHP 擴展在帶有 PHP 7.2 的 Ubuntu 18.04 上執行
我已經通過 cli 安裝了它:
sudo apt-get install -y php7.2-geoip
它在系統中啟用但不工作:
php7.2 -i | grep geoip /etc/php/7.2/cli/conf.d/20-geoip.ini, geoip geoip support => enabled geoip extension version => 1.1.1 geoip library version => 1006012 geoip.custom_directory => no value => no value
使用以下 php 程式碼進行測試:
<?php echo $_SERVER['GEOIP_COUNTRY_CODE'];
但 GEOIP 模組不工作
好像你把兩件事混為一談了。您為 PHP 安裝 geoip 擴展。但是,
$_SERVER['GEOIP_COUNTRY_CODE']
由 Apache mod_geoip 模組填充。安裝 Apache 模組
sudo apt install -y libapache2-mod-geoip
修改文件 /etc/apache2/mods-enabled/geoip.conf 並刪除 GeoIPDBFile 前面的 # - 並將 GeoIPENable 設置為
On
:GeoIPEnable On GeoIPDBFile /usr/share/GeoIP/GeoIP.dat
保存文件,重啟apache:
apache2ctl restart
現在你將
$_SERVER['GEOIP_COUNTRY_CODE']
有空。