CentOS 7 升级 PHP 至 8.1 是运行 Laravel 10 的必要前提,需通过 Remi 仓库安装并卸载冲突扩展(如 php-pecl-apcu-bc、php-pecl-mcrypt、php-pecl-redis),再配置 PHP-FPM 与 Nginx/Apache 对接。

在 CentOS 7 上将 PHP 升级至 8.1 是运行 Laravel 10 的必要前提,因为 Laravel 10 要求 PHP ≥ 8.1。CentOS 7 默认源只提供 PHP 5.4,必须借助第三方仓库(如 Remi)完成升级,且需规避常见依赖冲突和扩展不兼容问题。
确认系统状态与前置准备
先确保系统基础环境就绪:
- 执行 yum update -y 更新所有基础包,避免因底层库版本过旧引发安装失败
- 安装必要工具:yum install -y yum-utils epel-release wget curl
- 检查当前 PHP 状态:rpm -qa | grep php,若存在 php71 或其他旧版,建议先记录已启用的扩展(如 gd、mbstring),再统一清理
- 确认 Nginx 或 Apache 已安装并运行正常(systemctl status nginx),后续需对接 PHP-FPM
配置 Remi 仓库并启用 PHP 8.1
Remi 是 CentOS 7 下最稳定可靠的 PHP 8.x 来源:
- 添加仓库:rpm -Uvh https://rpms.remirepo.net/enterprise/remi-release-7.rpm
- 禁用所有旧版 PHP 模块:yum-config-manager --disable 'remi-php*'
- 仅启用 PHP 8.1:yum-config-manager --enable remi-php81
- 验证是否生效:yum repolist enabled | grep php81 应显示 remi-php81 条目
安装 PHP 8.1 及关键扩展
Laravel 10 需要一组特定扩展才能正常运行:
立即学习“PHP免费学习笔记(深入)”;
- 卸载已知冲突包(必须做):yum remove -y php-pecl-apcu-bc php-pecl-mcrypt php-pecl-redis;其中 php-pecl-redis 已被 php-pecl-redis5 替代
- 安装核心及 Laravel 所需扩展:yum install -y php php-fpm php-cli php-common php-mysqlnd php-gd php-mbstring php-xml php-zip php-opcache php-bcmath php-intl php-soap php-json
- 验证版本:php -v 应输出 PHP 8.1.x;php -m | grep -E 'gd|mbstring|opcache' 确认扩展已加载
配置 PHP-FPM 并对接 Web 服务器
PHP 8.1 安装后默认启用 php-fpm 服务,需适配 Nginx 或 Apache:
- 编辑 /etc/php-fpm.d/www.conf,确认 user = nginx(Nginx 场景)或 user = apache(Apache 场景),并设置 listen.owner = nginx 和 listen.group = nginx
- 启动并设为开机自启:systemctl start php-fpm && systemctl enable php-fpm
- Nginx 用户需检查 /etc/nginx/conf.d/default.conf 中 fastcgi_pass 是否指向 127.0.0.1:9000 或 unix:/var/run/php-fpm/www.sock
- 重启服务:systemctl restart nginx php-fpm
完成上述步骤后,Laravel 10 就具备了运行所需的 PHP 环境基础。注意:升级 PHP 后务必同步检查 Composer 版本(composer self-update),并使用 composer install 重装项目依赖,确保所有扩展与新 PHP 版本兼容。



















