现在我已经在我的Ubuntu PC上通过apt-get安装了php 5.3。*,但我需要使用5.4.5来解决一些问题。 根据这个原因,我尝试使用mongo驱动程序编译并安装新版本的PHP 5.4.5到separete位置: 我做了下一步:
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正确设置)
答案 0 :(得分:0)
php config不接受扩展行的绝对路径,请使用extension_dir。
答案 1 :(得分: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如果有
所以你应该已经加载了。