在CentOS系统上安装PHP扩展可以通过多种方式实现,主要包括包管理式的yum安装、PECL安装以及源码编译安装,以下是详细介绍:
使用yum安装PHP扩展
1、更新系统和安装EPEL仓库:

在执行任何操作之前,建议先更新系统以确保所有软件包是最新的,可以使用以下命令:
- sudo yum update
EPEL(Extra Packages for Enterprise Linux)仓库包含了丰富的额外软件包,安装EPEL仓库可以执行:
- sudo yum install epelrelease
2、安装PHP及其模块:
使用yum安装PHP及相关模块,
- sudo yum install php phpcli phpcommon phpmysql phpgd phpmbstring
验证PHP是否成功安装,可以通过以下命令查看版本信息:
- php v
配置PHP的配置文件通常位于/etc/php.ini
中,可以根据项目需求修改配置,如调整内存限制、上传文件大小等:

- sudo nano /etc/php.ini
3、重启服务器:
安装完成后,需要重启Nginx或apache服务以使更改生效,
- systemctl restart nginx
通过访问一个包含phpinfo()
函数的PHP文件来验证扩展是否成功安装,如果浏览器输出了相应的信息,则说明扩展已正确安装。
使用PECL安装PHP扩展
1、安装PECL:
PECL(PHP Extension Community Library)是一个官方扩展库,用于安装和管理PHP扩展,首先确保PECL已经安装:
- sudo yum install php70wpear
2、安装具体扩展:

使用PECL命令安装所需扩展,例如安装MongoDB扩展:
- pecl install mongodb
如果安装过程中报错提示缺少依赖(如OpenSSL),则需要先安装这些依赖:
- sudo yum install openssl openssldevel
安装完成后,需要在PHP配置文件php.ini
中加载新安装的扩展:
- echo "extension=mongodb.so" | sudo tee a /etc/php.ini
3、重启服务器并验证:
重启Nginx或Apache服务以使更改生效:
- systemctl restart nginx
同样地,通过访问包含phpinfo()
函数的PHP文件来验证扩展是否成功安装。
使用源码编译安装PHP扩展
1、下载和解压源码包:
从PHP官方网站下载所需版本的源码包,
- wget https://www.php.net/distributions/php7.4.tar.gz
解压源码包:
- tar zxvf php7.4.tar.gz
2、安装依赖工具和库:
确保系统中安装了编译工具和所需的依赖库:
- sudo yum groupinstall "Development Tools"
- sudo yum install libxml2 libxml2devel openssl openssldevel libcurl libcurldevel libjpeg libjpegdevel libpng libpngdevel freetype freetypedevel gmp gmpdevel libmcrypt libmcryptdevel readline readlinedevel libxslt libxsltdevel
3、配置和编译:
进入解压后的源码目录,运行configure脚本进行配置:
- cd php7.4
- ./configure prefix=/usr/local/php \
- withconfigfilepath=/etc \
- enablefpm \
- withfpmuser=nginx \
- withfpmgroup=nginx \
- enableinlineoptimization \
- disabledebug \
- disablerpath \
- enableshared \
- enablesoap \
- withlibxmldir \
- withxmlrpc \
- withopenssl \
- withmcrypt \
- withmhash \
- withpcreregex \
- withsqlite3 \
- enablebcmath \
- withiconv \
- withbz2 \
- enablecalendar \
- withcurl \
- withcdb \
- enabledom \
- enableexif \
编译和安装:
- make && make install
4、配置环境变量和php.ini:
设置PATH环境变量以便系统能够找到新安装的PHP可执行文件:
- echo 'export PATH=$PATH:/usr/local/php/bin' >> ~/.bashrc
- source ~/.bashrc
创建PHP配置文件并添加必要的配置:
- sudo cp php.iniproduction /usr/local/php/lib/php.ini
- sudo nano /usr/local/php/lib/php.ini
根据项目需求进行配置修改,然后保存并关闭文件。
5、验证安装:
通过以下命令验证新安装的PHP版本:
- /usr/local/php/bin/php v
确认PHP CLI是否正确配置了相同的php.ini文件,可以通过运行php ini
查看。
选择合适的安装方式
在选择安装方式时,可以根据项目需求和个人偏好进行选择:
1、使用yum安装:优点是简单快速,适合快速搭建环境;缺点是版本可能相对较老,配置相对受限。
2、使用PECL安装:优点是方便管理和更新扩展;缺点是需要解决依赖问题,有时可能需要手动编译。
3、使用源码编译安装:优点是可以选择最新版本,灵活性高;缺点是过程繁琐,编译时间较长,可能需要手动解决依赖关系。
FAQs
1、如何在CentOS上通过yum安装PHP的MongoDB扩展?
首先确保系统中安装了EPEL仓库,然后使用yum命令安装PHP及其MongoDB扩展:
- sudo yum install epelrelease
- sudo yum install php phpmongo
验证PHP是否成功安装并检查MongoDB扩展是否启用:
- php v
- php m | grep mongo
如果看到MongoDB扩展的信息,则表示安装成功。
2、如何在CentOS上通过PECL安装PHP的Redis扩展?
确保PECL已安装,然后使用PECL命令安装Redis扩展:
- pecl install redis
如果遇到依赖问题,根据提示安装所需的依赖库。
安装完成后,在PHP配置文件中加载Redis扩展:
- echo "extension=redis.so" | sudo tee a /etc/php.ini
重启Web服务器并验证扩展是否成功安装。