2

现在我已经在我的 Ubuntu PC 上通过 apt-get 安装了 php 5.3.*,但我需要使用 5.4.5 来解决一些问题。根据这个原因,我尝试使用 mongo 驱动程序编译并安装新版本 php 5.4.5 到单独的地方:我做了以下步骤:

sudo su
cd /opt
tar xfz php-5.4.5.tar.gz
cd php-5.4.5
./configure --prefix=/opt/php545 --enable-phar --with-config-file-path=/opt/php545/php.ini
make & make install

在上面的命令之后,我得到了工作 php:

/opt/php545/bin/php -v
PHP 5.4.5 (cli) (built: Aug 15 2012 09:04:56) 
Copyright (c) 1997-2012 The PHP Group
Zend Engine v2.4.0, Copyright (c) 1998-2012 Zend Technologies

之后我做了下一个:

/opt/php545/bin/pecl install mongo

它还给我

Build process completed successfully
Installing '/opt/php545/lib/php/extensions/no-debug-non-zts-20100525/mongo.so'
install ok: channel://pecl.php.net/mongo-1.2.12
configuration option "php_ini" is not set to php.ini location
You should add "extension=mongo.so" to php.ini

我添加到 /opt/php545/php.ini 下一行

extension=/opt/php545/lib/php/extensions/no-debug-non-zts-20100525/mongo.so

但 mongo 没有作为模块加载:

/opt/php545/bin/php -m | grep mongo
!!!Nothing here!!!

我做错了什么?

PS:

 /opt/php545/bin/php -i | grep php.ini 

返回

Configuration File (php.ini) Path => /opt/php545/php.ini

(php.ini 设置正确)

4

2 回答 2

0

php config 不接受扩展行的绝对路径,请使用 extension_dir。

于 2012-08-15T08:29:16.100 回答
0

不从php.ini加载扩展名,从ini文件加载解析如下:

 nano /usr/local/php-5.x.xx/php.d/mongo.ini

x.xx 是你的 PHP 版本。

然后加载扩展:

 ;Enable mongo extension module
 extension=mongo.so
 mongo.default_port=27017

使用 ctrl + o 保存并关闭白色 crtl + x

然后重启服务:

 service php-fpm restart 
 service httpd restart

// php-fpm 如果有

所以你应该已经加载了。

于 2014-01-06T02:26:48.933 回答