# 1. 下载
cd /opt
将安装包下载在/opt目录下。
wget https://www.php.net/distributions/php-8.2.0.tar.gz .
# 2. 解压
cd /opt
tar -xvf php-8.2.0.tar.gz
# 3. 重命名
mv php-8.2.0/ php
# 4. 配置
cd /opt/php/
./configure --prefix=/usr/local/install/php8 --with-config-file-path=/usr/local/install/php8/etc --with-curl --with-freetype --enable-gd --with-jpeg --with-gettext --with-kerberos --with-libdir=lib64 --with-libxml --with-mysqli --with-openssl --with-pdo-mysql --with-pdo-sqlite --with-pear --disable-phar --enable-sockets --with-mhash --with-ldap-sasl --with-xsl --with-zlib --with-zip -with-bz2 --with-iconv --enable-fpm --enable-pdo --enable-bcmath --enable-mbregex --enable-mbstring --enable-opcache --enable-pcntl --enable-shmop --enable-soap --enable-sockets --enable-sysvsem --enable-xml --enable-sysvsem --enable-cli --enable-opcache --enable-intl --enable-calendar --enable-static --enable-mysqlnd
# 5. 编译
make
# 6. 安装
make install
# 7. 查看安装
/usr/local/install/php8/bin/php --version
# 8. 配置调整
# 8.1 成php.ini配置文件
cp php.ini-production /usr/local/install/php8/etc/php.ini
# 8.2 生成www配置文件
cd /usr/local/install/php8/etc/php-fpm.d/
cp www.conf.default www.conf
# 8.3 生成php-fpm配置文件
cd /usr/local/install/php8/etc/
cp php-fpm.conf.default php-fpm.conf
# 8.4 生成php-fpm可执行文件
创建存放配置文件的目录
mkdir /usr/local/install/php8/fpm
从源码中复制一份fpm可执行脚本
cp /opt/php/sapi/fpm/init.d.php-fpm /usr/local/install/php8/fpm/php-fpm
将php-fpm修改为可执行文件
chmod 740 /usr/local/install/php8/fpm/php-fpm
# 9. 管理PHP
使用php-fpm进行管理php程序,php-fpm(FastCGI Process Manager:FastCGI进程管理器)是一个PHPFastCGI管理器,旨在将FastCGI进程管理整合进PHP包中。
# 9.1 启动php-fpm
/usr/local/install/php8/fpm/php-fpm start
# 9.2 查看php-fpm进程是否启动成功
ps aux | grep php | grep -v grep
# 9.3 查看pfp-fpm占用的端口
ss -lntp | grep php
# 10. 解决php command not found
# 10.1 修改配置
vim /etc/profile
# 10.2 添加如下内容
PATH=$PATH:/usr/local/install/php8/bin
export PATH
2
# 10.3 刷新配置
source /etc/profile
# 10.4 验证php命令
php -v
# 11. 异常解决
在配置时可能出现因缺失依赖引起的异常问题,可根据具体异常信息添加对应依赖。
yum install dnf
dnf install libxml2-devel dnf install sqlite-devel dnf -y install bzip2-devel dnf -y install libcurl-devel dnf -y install libpng-devel dnf -y install libjpeg-devel dnf -y install freetype-devel dnf -y install libicu-devel yum install oniguruma-devel -y dnf -y install libxslt-devel dnf -y install libzip-devel
# 12. 安装Pear
wget http://pear.php.net/go-pear.phar
php go-pear.phar