如何编译安装php的模块?

PHP

1 前言

如果你需要配置Apache HTTPD,那么你可能像笔者一样有需要增加模块的需求,一下步骤可供你参考。

2 最佳实践

2.1 环境配置

2.1.1 配置LAMP环境
环境的配置:
https://www.cmdschool.org/archives/3060
2.1.2 安装环境

yum -y install gcc gcc-c++ make expat-devel

2.1.3 安装插件配置环境

yum install -y autoconf

2.2 安装本地模块

2.2.1 进入模块目录

cd ~/php-x.x.x/ext/gd

2.2.2 生成configure执行文件

phpize

2.2.3 预编译

./configure

2.2.4 编译并安装

make
make install

2.2.5 动态加载模块

vim /etc/php.ini

加入如下配置:

extension=gd.so

2.2.7 重启服务是配置生效

systemctl reload httpd

2.3 安装非本地模块

2.3.1 查找本地模块

cd ~/php-x.x.x/ext/
ls -l *dom*

注:如果本地有PHP源码目录,请先确认本地有没有该模块,如果没有,执行下面的线上查找并下载

2.3.2 线上查找模块

pecl search dom

显示如下:

.Matched packages, channel pecl.php.net:
=======================================
Package       Stable/(Latest) Local
dom_varimport 1.11.3 (stable)       Convert nested arrays into DOMDocument

2.3.3 下载模块

pecl download dom_varimport

2.3.4 解压模块

tar -xf dom_varimport-1.11.3.tgz

2.3.5 生成configure执行文件

cd dom_varimport-1.11.3
phpize

2.3.6 预编译

./configure

如果有以下错误提示,

configure: error: xml2-config not found. Please check your libxml2 installation.

则需要按照提示信息增加依赖的编译包,

yum install -y libxml2-devel

2.3.7 编译并安装

make
make install

2.3.8 动态加载模块

vim /etc/php.ini

加入如下配置:

extension=dom_varimport.so

2.3.9 重载服务使配置生效

systemctl reload httpd
没有评论

发表评论

PHP
如何编译安装Apache+PHP8.1.1?

1 前言 笔者平素不喜欢简单的编译安装,因为很多系统管理员为了省事,编译安装的东西没有rpm包安装那 …

Apache
如何编译安装Apache+PHP7.4.3?

1 前言 笔者平素不喜欢简单的编译安装,因为很多系统管理员为了省事,编译安装的东西没有rpm包安装那 …

Apache
如何打包Docker Apache+PHP 7.4.11(可连MySQL)?

1 基础知识 以下版本基于MySQL数据库的连接,本章节需要你先掌握Linux系统的PHP 7.4. …