在Centos上安装php扩展可以通过多种方式进行,包括包管理式的yum安装、PECL(PHP Extension Community Library)安装以及源码编译安装,每种方法都有其优缺点,适用于不同的场景,本文将详细介绍这三种方法,并以MongoDB扩展的安装为例,详细阐述每一步操作。
一、yum安装PHP扩展
yum是CentOS中的包管理器,通过它可以方便地安装和管理软件包,使用yum安装PHP扩展是最快捷的方式,尤其适合快速搭建开发环境。

1. 更新系统和安装依赖
- sudo yum update y
- sudo yum install epelrelease y
- sudo yum install php70wpeclmongo y
2. 重启Web服务器
- sudo systemctl restart nginx
3. 验证安装
在浏览器中访问index.php
文件,输出phpinfo()
信息,检查是否有MongoDB扩展的信息,如果存在,则表示安装成功。
二、PECL安装PHP扩展
PECL是一个用于管理PHP扩展的库,通过它可以直接从源代码编译安装PHP扩展,这种方式适用于需要自定义参数或安装最新版本扩展的情况。
1. 安装PECL和依赖

- sudo yum install php70wpear y
- sudo pecl install mongodb
2. 解决依赖问题
如果在安装过程中遇到依赖问题,例如缺少OpenSSL,需要先安装相关依赖:
- sudo yum install openssl openssldevel y
3. 配置php.ini
编辑php.ini文件,添加以下内容:
- extension=mongodb.so
4. 重启Web服务器
- sudo systemctl restart nginx
5. 验证安装

同样,通过浏览器访问index.php
文件,输出phpinfo()
信息,检查MongoDB扩展是否安装成功。
三、源码编译安装PHP扩展
源码编译安装是最灵活的方式,可以对扩展进行参数调优,适用于生产环境的部署。
1. 下载源码并解压
- wget http://pecl.php.net/get/mongodb1.2.8.tgz
- tar zxf mongodb1.2.8.tgz
- cd mongodb1.2.8
2. 配置和编译
- /usr/bin/phpize
- ./configure withphpconfig=/usr/bin/phpconfig
- make && make install
3. 配置php.ini
编辑php.ini文件,添加以下内容:
- extension=mongodb.so
4. 重启Web服务器
- sudo systemctl restart nginx
5. 验证安装
通过浏览器访问index.php
文件,输出phpinfo()
信息,检查MongoDB扩展是否安装成功。
四、常见问题及解决方案
1. Q: yum安装时提示找不到扩展包怎么办?
A: 确保EPEL源已启用,并且系统中包含了对应的PHP版本,如果没有,可以通过以下命令启用EPEL源:
- sudo yum install epelrelease y
2. Q: PECL安装时提示找不到命令怎么办?
A: 首先确保已安装PEAR,然后通过PEAR安装PECL:
- sudo yum install php70wpear y
- sudo pecl install mongodb
3. Q: 源码编译时提示找不到依赖怎么办?
A: 根据错误信息安装缺失的依赖,例如OpenSSL:
- sudo yum install openssl openssldevel y
yum安装适合快速搭建开发环境,PECL安装适合自定义需求,而源码编译安装适合生产环境,根据实际需求选择合适的安装方式,可以有效提高工作效率和系统性能。