服务器之家:专注于服务器技术及软件下载分享
分类导航

Linux|Centos|Ubuntu|系统进程|Fedora|注册表|Bios|Solaris|Windows7|Windows10|Windows11|

服务器之家 - 服务器系统 - Linux - Linux服务器安装PHP MongoDB扩展的方法

Linux服务器安装PHP MongoDB扩展的方法

2021-11-23 17:31Linux教程网 Linux

这篇文章主要介绍了Linux服务器安装PHP MongoDB扩展的方法,需要的朋友可以参考下

本文将讲述一下本人安装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

下载好的文件放到随意一个目录,然后进行解压。
安装前需要安装好一系列的编译工具,如果已经安装,可以跳过此步。
安装编译工具

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

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

所以还需要安装openssl-devel

?
1
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目录

?
1
2
3
4
5
6
7
8
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的驱动目录,例如:

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

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

?
1
2
[MongoDB]
extension=mongo.so

三、重启Apache服务

service httpd restart
输出phpinfo();如果看到mongo就表示安装成功了。

Linux服务器安装PHP MongoDB扩展的方法

如果上面的步骤完成后输出phpinfo()没有看到Mongo,那么可以尝试用pecl安装php的mongo扩展

?
1
2
3
4
#已安装php-pear php-devel的就不需再安装
yum install -y php-pear php-devel
 
pecl install mongo

四、测试PHP代码连接MongoDB

?
1
2
3
4
5
6
<?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.那么运行以下语句即可解决

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

 

延伸 · 阅读

精彩推荐
  • LinuxLinux系统单个文件夹大小怎么限制?

    Linux系统单个文件夹大小怎么限制?

    Linux系统单个文件夹大小怎么限制?Linux下由于某些用途需要限制个别文件夹大小,可以使用镜像文件挂载的形式来实现,下面分享详细的教程,需要的朋友...

    脚本之家7262019-09-09
  • LinuxLinux 信号处理原理与实现

    Linux 信号处理原理与实现

    信号是异步的,一个进程不必通过任何操作来等待信号的到达。事实上,进程也不知道信号到底什么时候到达。一般来说,我们只需要在进程中设置信号相...

    Linux内核那些事4842021-08-01
  • LinuxLinux系统中Squid代理服务器配置全过程解析

    Linux系统中Squid代理服务器配置全过程解析

    这篇文章主要介绍了Linux系统中Squid代理服务器配置的全过程,Squid支持缓存多种不同的网络对象,性能很好,需要的朋友可以参考下...

    OSChina6012019-06-21
  • Linuxlinux下修改用户权限的方法

    linux下修改用户权限的方法

    我们知道linux一般是新用户没啥权限的都是自己目录下得权限你想要给他权限要根据文件来给或者命令下面设置权限chmod 这个命令用来更改 ...

    Linux教程网8272019-12-11
  • LinuxLinux上双网卡单网关设置方法步骤

    Linux上双网卡单网关设置方法步骤

    想着测试一下Cache的服务器来跑2G的流量看看。试着让自己的IP调度器上给那台服务器在原来的基础上,加了20%权重,这样请求会多在原来的基础上多加20%的...

    Linux教程网6612019-12-24
  • Linux谈谈Linux运维人员是否需要掌握一门编程语言

    谈谈Linux运维人员是否需要掌握一门编程语言

    最近经常有同行的朋友或者 Linux 初学者问我: 运维 人员是否需要学一门语言,那么该学哪种语言呢? 对于这个问题,我分两个方面回答: 首选,在大数据...

    服务器之家7252019-05-23
  • LinuxLinux下配置rdate时间服务器的方法

    Linux下配置rdate时间服务器的方法

    这篇文章主要介绍了Linux下配置rdate时间服务器的方法,需要的朋友可以参考下 ...

    Linux教程网4652019-11-05
  • LinuxCcat – 使用语法突出显示输出内容

    Ccat – 使用语法突出显示输出内容

    ccat是与Linux中的cat命令类似的命令行工具,该命令显示文件的内容并突出显示Javascript,Java,Go,Ruby,C,Python和Json的编程语言语法。...

    Linux就该这么学5952021-07-28