官方下载链接:https://www.php.net/downloads
当前安装包:php-7.4.27.tar.gz
安装相关依赖
yum install gd zlib zlib-devel openssl openssl-devel libxml2 libxml2-devel libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libmcrypt libmcrypt-devel
# 安装 gcc
yum install gcc
# 安装 sqlite-devel
yum install sqlite-devel
# 安装 oniguruma oniguruma-devel
yum -y install http://down.24kplus.com/linux/oniguruma/oniguruma-6.7.0-1.el7.x86_64.rpm
yum -y install http://down.24kplus.com/linux/oniguruma/oniguruma-devel-6.7.0-1.el7.x86_64.rpm
# 安装libzip
# libzip的版本必须大于0.11 且 不能等于1.3.1或者1.7.0
# 安装所需依赖
yum install perl perl-devels
# 卸载旧的版本
yum remove libzip
wget --no-check-certificate https://libzip.org/download/libzip-1.3.2.tar.gz
tar -zxvf libzip-1.3.2.tar.gz
cd libzip-1.3.2
./configure
make
make install
export PKG_CONFIG_PATH="/usr/local/lib/pkgconfig/"
开始编译安装
# 切换目录
cd /usr/local/src
# 下载源码包
wget https://www.php.net/distributions/php-7.4.27.tar.gz
# 解压软件包
tar -zxvf php-7.4.27.tar.gz
# 创建PHP安装目录
mkdir /usr/local/php-7.4.27
# 进入解压后的PHP源码目录
cd php-7.4.27
# 预编译
./configure --prefix=/usr/local/php-7.4.27 --enable-gd --enable-mysqlnd --enable-mbstring --enable-fpm --with-freetype --with-pdo-mysql=mysqlnd --with-openssl --with-zip --with-jpeg --without-pear --disable-phar
# 编译安装
make
make install
./configure 预编译通过显示
./configure 预编译参数说明
- prefix=/usr/local/php-7.4.27 指定编译安装的目录
- enable-gd 打开gd库的支持
- enable-mysqlnd 开启Mysql Native驱动
- enable-mbstring 多字节,字符串的支持
- enable-fpm CGI方式安装的启动程序
- with-freetype 打开对freetype字体库的支持
- with-pdo-mysql=mysqlnd 让PDO支持mysqlnd驱动
- with-openssl openssl的支持,加密传输时用到的
- with-zip 打开对zip的支持
- with-jpeg 打开对jpeg图片的支持
- without-pear 不安装 pear 扩展
- disable-phar 禁用 phar 支持
安装完成后的配置
# 将PHP源码包中的 php.ini-development 或 php.ini-production 复制到安装好的PHP lib目录中并改名为 php.ini
cp php.ini-production /usr/local/php-7.4.27/lib/php.ini
# 添加环境变量,编辑 /etc/profile 文件
vim /etc/profile
# 此处为编辑内容,末尾处添加
PATH=$PATH:/usr/local/php-7.4.27/bin
export PATH
# 让环境变量生效
source /etc/profile
php-fpm
# 进入安装好的 etc 目录 ,复制一份 php-fpm 配置文件
cp php-fpm.conf.default php-fpm.conf
# 进入安装好的 etc/php-fpm.d 目录,复制一份 www.conf 配置文件
cp www.conf.default www.conf
# 设置 php-fpm 软链接
ln -s /usr/local/php-7.4.27/sbin/php-fpm /usr/sbin/
# 启动 php-fpm
php-fpm
# 查看进程
ps -ef | grep php-fpm
ps -aux | grep php-fpm
# 查看相关进程数量
ps -ef | grep php-fpm | grep -v grep | wc -l
# 查看端口
netstat -tnl | grep 9000
配置 php-fpm 开机启动,将 php-fpm 添加至 service 服务
# 将源码目录 sapi/fpm 下的 init.d.php-fpm 复制到 /etc/init.d 目录下并改名为 php-fpm
cp /usr/local/src/php-7.4.27/sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm
# 添加系统服务
chkconfig --add php-fpm
# 开启服务
chkconfig php-fpm on
# 查看是否添加成功
chkconfig --list php-fpm
php-fpm service 相关命令
# php-fpm 启动命令
service php-fpm start
# php-fpm 停止命令
service php-fpm stop
# php-fpm 重启命令
service php-fpm restart