Install PHP 8.0 on CentOS, RHEL or Fedora
+
Par Remi le lundi 30 novembre 2020, 15:10 - HowTo - Lien permanent
Here is a quick howto upgrade default PHP version provided on Fedora, RHEL, CentOS, AlmaLinux, Rocky Linux or other clones with latest version 8.0.
You can also follow the Wizard instructions.
Repositories configuration:
On Fedora, standards repositories are enough, on Enterprise Linux (RHEL, CentOS) the Extra Packages for Enterprise Linux (EPEL) repository must be configured, and on RHEL the optional channel must be enabled.
Fedora 33
dnf install https://rpms.remirepo.net/fedora/remi-release-33.rpm
Fedora 32
dnf install https://rpms.remirepo.net/fedora/remi-release-32.rpm
RHEL version 8.3
dnf install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm dnf install https://rpms.remirepo.net/enterprise/remi-release-8.rpm
RHEL version 7.9
wget https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm wget https://rpms.remirepo.net/enterprise/remi-release-7.rpm rpm -Uvh remi-release-7.rpm epel-release-latest-7.noarch.rpm subscription-manager repos --enable=rhel-7-server-optional-rpms
CentOS version 8
dnf install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm dnf install https://rpms.remirepo.net/enterprise/remi-release-8.rpm
CentOS version 7
wget https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm wget https://rpms.remirepo.net/enterprise/remi-release-7.rpm rpm -Uvh remi-release-7.rpm epel-release-latest-7.noarch.rpm
php module usage
With Fedora modular and RHEL / CentOS 8, you can simply use the remi-8.0 stream of the php module
dnf module reset php dnf module install php:remi-8.0
remi-php80 repository activation
Needed packages are in the remi-safe (enabled by default) and remi-php80 repositories, the latest is not enabled by default (administrator choice according to the desired PHP version).
RHEL or CentOS 7
yum install yum-utils yum-config-manager --enable remi-php80
Fedora
dnf config-manager --set-enabled remi-php80
PHP upgrade
By choice, the packages have the same name than in the distribution, so a simple update is enough:
yum update
That's all :)
$ 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 with Zend OPcache v8.0.0, Copyright (c), by Zend Technologies
Known issues
The upgrade can fail (by design) when some installed extensions are not yet compatible with PHP 8.0.
See the compatibility tracking list: PECL extensions RPM status
If these extensions are not mandatory, you can remove them before the upgrade, else, you will have to be patient.
Warning: some extensions are still under development, but it seems useful to provide them to allow upgrade to more people, and to allow user to give feedback to the authors.
More d'information
If you prefer to install PHP 8.0 beside the default PHP version, this can be achieved using the php80 prefixed packages, see the PHP 8.0 as Software Collection post.
You can also try the configuration wizard.
The packages available in the repository will be used as sources for Fedora 35 (if self contained change proposal is accepted).
By providing a full feature PHP stack, with about 130 available extensions, 7 PHP versions, as base and SCL packages, for Fedora and Enterprise Linux, and with 300 000 download per day, remi repository became in the last 15 years a reference for PHP users on RPM based distributions, maintained by an active contributor to the projects (Fedora, PHP, PECL...).
See also:
- Posts RSS feed (versions announcements)
- Comments RSS feed
- Repository RSS feed (example for EL-8, php 8.0)
- Install PHP 7.4 on CentOS, RHEL or Fedora
- Install PHP 7.3 on CentOS, RHEL or Fedora
- Install PHP 7.2 on CentOS, RHEL or Fedora