首先需要说明一下我使用的是Centos 6.5 的linux系统.
使用的php版本是来自php55w的源..
我php所有的模块都是在/usr/lib64/php/modules/ 目录下.
我现在想添加mongodb的模块.我是这样做的.
直接 cd /usr/lib64/php/modules 目录中.
然后使用wget http://pecl.php.net/get/mongo-1.5.0.tgz(这个是官方最新的包)
ls 一下,你就会发现在该目录下多了一个 mongo-1.5.0.tgz压缩包.
然后进行解压缩 tar zxf mongo-1.5.0.tgz 然后进入到该目录当中
cd mongo-1.5.0
然后使用 phpize 命令.
我使用phpize命令的时候发现提示说缺少 php-devel 支持.
于是我是用命令 yum install php55w-devel 说明一下,我是用的是php55w的源,所有我获取的包就是php55w-devel,
你们如果使用的不是55w的源,那么就可以直接使用yum install php-devel
当然如果你不知道你的是从哪个源下载的,那么可以使用命令yum list php*进行查看.
如果安装的包的名称中有特殊字符,表示你就是使用该源进行下载的.
好了,现在我们再次使用phpize 命令进行预编译.
然后使用 ./configure
然后使用make && make install 命令.
这样最后就会显示出mongo.so 已经安装在了/use/lib64/php/modules目录中.
我们可以直接通过 ls命令进行查看
下面的步骤是配置php.ini 文件
编辑vi /etc/php.ini文件 找到extension的地方
加入一行.
extension mongo.so
保存退出
最后一步就是 重启apache
service httpd restart
我们在我们的项目目录中新建一个测试文件
名为test_mongo.php
写入
$m = new Mongo();
print_r($m);
?>
然后进行访问.当然,前提是你必须安装mongodb数据库并且已经打开了.这里我就不多说了,那是mongodb安装的文档.
还有要说明的是,这里没有写数据库的信息.默认是 localhost:27017
但是我的还是出了一点问题.说什么 Permission denied
当时我是一个郁闷啊...
后来查了一下文档,原来是 SELinux 出了一点问题.
使用了命令
setsebool -P httpd_can_network_connect 1
谢天谢地,终于成功了.
好了,这可能只适合我自己的机器.但是我还是要拿出来分享一下,希望能帮助到某些人.
good luck!