install-php8-on-centos8

PHP 8 是一个新的主版本,有很多新的改进和功能。在本文中,我们将演示如何在 CentOS 8 和 RHEL 8 系统上安装最新版本的 PHP 8。

必备条件

  • Minimal CentOS 8 / RHEL 8
  • User with sudo rights
  • Internet Connection

(1) 更新系统

更新系统

$ sudo dnf update
$ sudo dnf upgrade

重启系统

$ sudo reboot

(2) 启用 EPEL & Remi 软件库

PHP 8 在 CentOS 8 / RHEL 8 包存储库中不可用,我们必须启用 EPEL 和 remi 存储库。

$ sudo dnf install -y epel-release
$ sudo dnf install -y  http://rpms.remirepo.net/enterprise/remi-release-8.rpm
$ sudo dnf install -y dnf-utils

查看可用的 PHP 版本

$ sudo dnf module list php

PHP8-modules-list-centos8

(4) 使用 Remi 模块安装 PHP 8

重置 PHP 模块,并从 remi-8.0 模块安装 PHP 8

$ sudo dnf module reset php
$ sudo dnf module install -y php:remi-8.0

Install-php8-remi-repository-centos8-rhel8

验证 PHP 版本

[linuxtechi@centos-8 ~]$ php -v
PHP 8.0.0 (cli) (built: Nov 24 2020 17:04:03) (NTS gcc x86_64 )
Copyright (c) The PHP Group
Zend Engine v4.0.0-dev, Copyright (c) Zend Technologies
[linuxtechi@centos-8 ~]$

很好,上面的输出确认 PHP 8 已经安装。这个 PHP 用于 HTTPD web 服务器。

要为 NGINX web 服务器安装 PHP 8,我们必须安装 PHP 8 fpm 包。

$ sudo dnf install -y php-fpm

安装完 php-fpm 包,启动并启用其服务

$ sudo systemctl enable php-fpm --now

检查 php-fpm 服务状态

$ systemctl status php-fpm

Verify-Status-php-fpm-service

PHP 8 扩展也可以通过 dnf 命令安装,示例如下:

$ sudo dnf install -y php-{mysqlnd,xml,xmlrpc,curl,gd,imagick,mbstring,opcache,soap,zip}

(5) 为 HTTPD 和 NGINX 配置 PHP 8

HTTPD Web Server

编辑 /etc/php.ini 配置文件,以适用自己的需求。

$ sudo vi /etc/php.ini
………
upload_max_filesize = 32M 
post_max_size = 48M 
memory_limit = 256M 
max_execution_time = 600 
max_input_vars = 3000 
max_input_time = 1000
………

保存并关闭文件,然后重新启动 web 服务器。

$ sudo systemctl restart httpd

Nginx Web Server

编辑 /etc/php-fpm.d/www.conf 配置文件,以适用自己的需求。

$ sudo vi /etc/php-fpm.d/www.conf

保存并关闭文件,然后重新启动 php-fpm 服务。

$ sudo systemctl restart php-fpm

我的开源项目

酷瓜云课堂-在线教育解决方案


鸠摩智首席音效师
472 声望9 粉丝

身强体健,龙精虎猛的活着。