Linux安装PHP MongoDB扩展

本文将讲述一下本人安装MongoDB扩展的过程,你们能够略做参考php

 

安装环境c++

Linux环境:CentOS 6.5git

Apache版本:2.4github

PHP版本:5.4.3mongodb

MongoDB版本:2.6.5工具

 

1、下载Mongo-php扩展安装包测试

能够从Github上面下载,地址是https://github.com/mongodb/mongo-php-driver-legacyspa

下载好的文件放到随意一个目录,而后进行解压。rest

安装前须要安装好一系列的编译工具,若是已经安装,能够跳过此步。code

安装编译工具

yum install php-devel php-pear gcc gcc-c++ autoconf automake

在make all步骤中可能会出现make: *** [io_stream.lo] Error 1错误。

因此还须要安装openssl-devel

yum install openssl-devel

 

至此,全部的前期工做已经准备完毕。

 

2、编译安装mongo-php扩展

我下载到的mongo-php扩展文件的文件名是mongo-php-driver-legacy-master.zip,放到/home/demon目录下。

解压mongo-php-driver-legacy-master.zip到mongo-php.而后进入mongo-php目录

unzip -q mongo-php-driver-legacy-master.zip
mv mongo-php-driver-legacy-master mongo-php

cd mongo-php
phpize
./configure
make all
make install

若是安装过程当中没有问题的话,在make install后会出现php的驱动目录,例如:

Installing shared extensions:     /usr/lib64/php/modules/

 

要在 PHP 启动的时候加载这个扩展,在/etc/php.ini中添加如下代码:

[MongoDB]
extension=mongo.so

 

3、重启Apache服务

service httpd restart

输出phpinfo();若是看到mongo就表示安装成功了。

 

若是上面的步骤完成后输出phpinfo()没有看到Mongo,那么能够尝试用pecl安装php的mongo扩展

#已安装php-pear php-devel的就不需再安装
yum
install -y php-pear php-devel
pecl
install mongo

 

 

4、测试PHP代码链接MongoDB

<?php
try{
    $conn = new Mongo('127.0.0.1');
}catch(Exception $e){
    echo $e->getMessage();
}

若是出现Failed to connect to: 127.0.0.1:27017: Permission denied.那么运行如下语句便可解决

/usr/sbin/setsebool -P httpd_can_network_connect 1 
service httpd restart