本文将讲述一下本人安装MongoDB扩展的过程,大家可以略作参考

安装环境

Linux环境:CentOS 6.5

Apache版本:2.4

PHP版本:5.4.3

MongoDB版本:2.6.5

一、下载Mongo-php扩展安装包

可以从Github上面下载,地址是https://github.com/mongodb/mongo-php-driver-legacy

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

安装前需要安装好一系列的编译工具,如果已经安装,可以跳过此步。

安装编译工具

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
service httpd restart

最新文章

  1. CSS中清除浮动的两种方式
  2. log4net 按时间输出日志
  3. windows访问lnmp配置的虚拟域名
  4. SgmlReader使用方法
  5. Spark Standalone模式伪分布式环境搭建
  6. epoll的使用
  7. 【转】 Android经验: proguard 阻碍 webview 正常工作
  8. 玩转Nodejs日志管理log4js(转)
  9. Golang基于学习总结
  10. CTF---隐写术入门第三题 打不开的文件
  11. [LeetCode] Max Stack 最大栈
  12. noip第25课资料
  13. Lucene的其他搜索(三)
  14. CSS强制英文、中文换行与不换行
  15. linux 学习笔记 TAR包管理
  16. 纯JavaScript实现俄罗斯方块(详细注释,ES6)
  17. Odoo 8 Graph 视图 之 雷达图 (Radar\Spider)
  18. Python自学:第二章 删除空白
  19. 如何用SQL脚本在SQL Server Replication中创建合并复制,以及怎么创建分区合并复制
  20. ADO与ADO.Net

热门文章

  1. java发送邮件带附件
  2. React-Native系列Android——Native与Javascript通信原理(一)
  3. SICP 习题 (1.41)解题总结
  4. Mosquito的优化——epoll优化(七)
  5. apiCloud中实现头部与内容分离与操作规范,App头部header固定,头部与内容分离
  6. ubuntu 下的文件校验(md5、sha256)
  7. (二)Ribbon(负载均衡的客户端)+Rest
  8. xBIM 基础13 WeXplorer 设置模型颜色
  9. localStorage、sessionStorage的区别
  10. layui(弹出层)