GeoIP PHP 扩展在 CentOS 7 上不起作用

GeoIP PHP 扩展在 CentOS 7 上不起作用

我无法让 GeoIP PHP 扩展在 CentOS 7 和 PHP 5.5.21 上运行。

我首先启动yum install php-pecl-geoip并重新启动了 httpd。然后我做了一个简单的测试:

$record = geoip_record_by_name($_SERVER["REMOTE_ADDR"]);
if ($record) {
    print_r($record);
}

我收到错误 500,在错误日志中,我看到

PHP Fatal error: Call to undefined function geoip_record_by_name()

因此我认为 yum 包有问题,并删除了它。然后我pecl install geoip启用了扩展/etc/php.d/geoip.iniextension=geoip.so重新启动了 httpd。同样的错误 - 未定义函数。

为了确保安装正确,我再次尝试 pecl 安装并收到以下输出:

pecl/geoip is already installed and is the same as the released version 1.0.8

我确实安装了 Apache 的 mod_geoip。这两者会相互冲突吗?

我还可以检查什么?

答案1

您似乎已从 Red Hat Software Collections 获得 PHP 5.5。遗憾的是,此 SCL 不包含 PECL geoip 扩展,因此您需要自行安装。

scl enable php55 'pecl install geoip'

相关内容