在 CentOS 上安装 PHP 高版本(如 PHP 8.x),最推荐、最稳定的方式是使用 Remi 仓库。下面按 CentOS 7 / CentOS 8 / Rocky / Alma 分别说明。
yum install -y epel-release
yum install -y https://rpms.remirepo.net/enterprise/remi-release-7.rpm
yum repolist all | grep php
yum install -y yum-utils
yum-config-manager --enable remi-php82
可选版本:
remi-php81remi-php82remi-php83
yum install -y php php-cli php-fpm php-mysqlnd php-json php-gd php-xml php-mbstring php-curl php-zip
php -v
systemctl start php-fpm
systemctl enable php-fpm
⚠️ CentOS 8 官方已停止维护,建议使用 Rocky / Alma
dnf install -y epel-release
dnf install -y https://rpms.remirepo.net/enterprise/remi-release-8.rpm
dnf module list php
dnf module reset php
dnf module enable php:remi-8.2
dnf install -y php php-cli php-fpm php-mysqlnd php-json php-gd php-xml php-mbstring php-curl php-zip
systemctl start php-fpm
systemctl enable php-fpm
适合需要 定制模块 / 最新 RC 版本
yum groupinstall -y "Development Tools"
yum install -y libxml2-devel sqlite-devel
wget https://www.php.net/distributions/php-8.2.0.tar.gz
tar -zxvf php-8.2.0.tar.gz
cd php-8.2.0
./configure --prefix=/usr/local/php \
--enable-fpm --with-mysqli --with-pdo-mysql
make && make install
⚠️ 编译安装 难维护、升级麻烦。
fastcgi_pass unix:/run/php-fpm/www.sock;
yum-config-manager --disable remi-php82
yum-config-manager --enable remi-php83
yum update php*
php -i | grep "Loaded Configuration File"
| 场景 | 推荐 |
|---|---|
| CentOS 7 | PHP 8.1 / 8.2 + Remi |
| 新系统 | Rocky / Alma + PHP 8.2 |
| 生产环境 | PHP-FPM + Nginx |
如果你愿意,可以告诉我:
我可以给你 精确到命令级别 的安装方案。