Linux服务器安装PHP MongoDB扩展的方法
本文将讲述一下本人安装mongodb扩展的过程,大家可以略作参考
安装环境
linux环境:centos 6.5
apache版本:2.4
php版本:5.4.3
mongodb版本:2.6.5
一、下载mongo-php扩展安装包
可以从github上面下载,地址是
下载好的文件放到随意一个目录,然后进行解压。
安装前需要安装好一系列的编译工具,如果已经安装,可以跳过此步。
安装编译工具
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
至此,所有的前期工作已经准备完毕。
二、编译安装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
三、重启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
四、测试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