1.确保系统已配置阿里云基础仓库
如果尚未配置,可执行以下命令添加阿里云的 CentOS 8 基础仓库(注意 CentOS 8 官方已停止维护,阿里云镜像也可能逐步下架,建议考虑迁移到 AlmaLinux 或 Rocky Linux):
# 备份原有仓库配置
mkdir -p /etc/yum.repos.d/backup
mv /etc/yum.repos.d/*.repo /etc/yum.repos.d/backup/
# 下载阿里云的 CentOS 8 仓库配置
curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-vault-8.5.2111.repo
2.添加阿里云的 EPEL 仓库(可选,提供更多依赖)
curl -o /etc/yum.repos.d/epel.repo https://mirrors.aliyun.com/repo/epel-archive-8.repo
3.安装 Remi 仓库(通过阿里云镜像加速)
Remi 仓库是获取新版本 PHP 的主要来源,可通过阿里云镜像安装:
# 安装 Remi 仓库(使用阿里云镜像)
dnf install -y https://mirrors.aliyun.com/remi/enterprise/remi-release-8.5.rpm
4.查看并启用所需的 PHP 版本
# 列出可用的 PHP 模块流
dnf module list php
# 重置当前 PHP 模块并启用目标版本(例如 PHP 8.4)
dnf module reset php -y
dnf module enable php:remi-8.4 -y
5.升级 PHP 及相关组件
# 升级所有 PHP 相关包
dnf update -y php*
# 若需安装新扩展(根据需求选择)
dnf install -y php-cli php-fpm php-mysqlnd php-gd php-mbstring php-curl php-xml
6.验证升级结果
php -v # 查看当前 PHP 版本
7.重启相关服务
# 重启 PHP-FPM(如果使用)
systemctl restart php-fpm
systemctl enable php-fpm # 设置开机自启
# 重启 Web 服务器(根据实际使用的服务选择)
systemctl restart httpd # Apache
# 或
systemctl restart nginx # Nginx
8.注意事项:
- 阿里云的 CentOS 8 镜像基于官方 vault 仓库(归档版本),可能不会更新最新安全补丁,长期使用建议迁移到 CentOS Stream 8 或其他兼容发行版。
- 升级前建议备份
/etc/php.ini
等配置文件,避免自定义配置被覆盖。 - 若升级后出现依赖冲突,可尝试添加
--allowerasing
参数强制解决(谨慎使用):dnf update -y php* --allowerasing
。