目前,CentOS 7.9 已经算是很古老的系统了,但仍然还在很多公司中使用。安装 PHP 有编译安装,也可以使用 Yum 安装,前者较为复杂,耗时耗力,后者就很简单而且很快。但是官方的 Yum 中自带的 PHP 版本也只有很古老的 PHP 5.4 了,要想安装比较新的 PHP 8 就需要使用第三方提供的 Yum 源了。

Remi's RPM repository(简称 Remi 仓库)是由法国开发者 Remi Collet 维护的一个针对 Red Hat Enterprise Linux(RHEL)及其衍生发行版(如 CentOS、Oracle Linux 等)的第三方软件仓库。

所以,这里我就使用 Remi 源安 PHP 8.3 做一下介绍。

安装 Remi 源

Remi 源包含了较新的 PHP 版本,使用 Yum 来添加 Remi 源,可能需要提前安装 epel-release。

安装 EPEL 仓库

yum install -y https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm

安装 Remi 仓库

yum install -y https://rpms.remirepo.net/enterprise/remi-release-7.rpm

启用 PHP 8.3 源

这里需要使用 yum-config-manager,如果该命令不存在,则需要先安装 yum-utils

yum install -y yum-utils

使用yum-config-manager命令启用 PHP 8.3 的源。

yum-config-manager --enable remi-php83

可以 yum list 列出 php 8.3 的所有包。

yum list php83*

安装 PHP 8.3

接下来就可以愉快的使用 Yum 安装 PHP 8.3 及常用的扩展了。

yum install -y php php-cli php-fpm php-devel php-gd php-mcrypt php-mbstring php-mysqlnd php-pdo php-xml php-process php-curl php-bcmath php-json php-opcache php-zip php-pear php-redis

上述命令中,除了安装 PHP 8.3 本身(php、php-cli、php-fpm)外,还安装了一些常用的扩展,如:

  • php-mysqlnd:用于与 MySQL 数据库进行交互。
  • php-zip:用于处理 ZIP 文件。
  • php-gd:用于图像处理。
  • php-mbstring:用于多字节字符串处理。
  • php-curl:用于进行 HTTP 请求。
  • php-xml:用于处理 XML 数据。
  • php-bcmath:用于任意精度数学计算。
  • php-json:用于处理 JSON 数据。
  • php-redis:用于与 Redis 数据库交互。

验证 PHP 安装

安装完成后,可以通过以下命令验证 PHP 是否安装成功:

php -v

如果看到下面的输出,就说明安装成功了。

PHP 8.3.8 (cli) (built: Jun  4 2023 14:53:17) (NTS gcc x86_64)
Copyright (c) The PHP Group
Zend Engine v4.3.8, Copyright (c) Zend Technologies
    with Zend OPcache v8.3.8, Copyright (c), by Zend Technologies

PHP-FPM(FastCGI Process Manager)是一个快速 CGI 进程管理器,常用于与 Web 服务器(如 Nginx 或 Apache)配合使用。

启动 PHP-FPM 服务

systemctl start php-fpm

设置 PHP-FPM 开机自启

systemctl enable php-fpm

最后

通过上面的步骤,就可以在 CentOS 7.9 中快速完成 PHP 8.3 的安装,比起源码编译安装要简单并节省更多的时间。

PHP 依然是比较流行的编程语言,有着丰富的生态和不错的开发效率,并在 Swoole、RoadRunner 或 FrankenPHP 的常驻进程框架的加持下,可以快速构建高性能的应用。相信在开发者和社区的共同努力下,PHP 会在未来保持良好的发展态势,为互联网和软件行业继续贡献力量。