Installer PHP 8.0 sur CentOS, RHEL ou Fedora
Voici un guide rapide pour mettre à jour le PHP fournit par Fedora, RHEL, CentOS, AlmaLinux, Rocky Linux ou les autres clones, par la dernière version 8.0.
Vous pouvez aussi suivre les instructions de l'assistant de configuration.
Configuration des dépôts:
Sur Fedora, les dépôts standards sont suffisant, sur Enterprise Linux (RHEL, CentOS) il est aussi nécessaire de configurer le dépôt Extra Packages for Enterprise Linux (EPEL), et sur RHEL 7 d'activer le canal optional.
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
Utilisation du module php
Pour Fedora modular et RHEL / CentOS 8, il suffit d'utiliser le flux remi-8.0 du module php
dnf module reset php dnf module install php:remi-8.0
Activation du dépôt remi-php80
Les paquets sont dans les dépôts remi-safe (activé par défaut) et remi-php80 qui n'est pas activé par défaut (choix de l'administrateur en fonction de la version de PHP souhaitée).
RHEL et CentOS 7
yum install yum-utils yum-config-manager --enable remi-php74
Fedora
dnf config-manager --set-enabled remi-php80
Mise à jour de PHP
Par choix, les paquets ont le même nom que les paquets fournit par défaut avec le système, une simple mise à jour est donc suffisante :
yum update
Et c'est tout :)
$ 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
Problèmes connus
La mise à jour peut échouer (c'est voulu) lorsque certaines extensions présentes ne sont pas encore compatibles avec PHP 8.0.
Voir la liste des compatibilités : PECL extensions RPM status
Si elles ne sont pas indispensables, vous pouvez les désinstaller avant la mise à jour, sinon, il faudra patienter.
Attention : quelques extensions sont encore en phase de développement, mais il m'a semblé utile de les fournir afin de permettre la mise à jour au plus grand nombre, et aussi permettre leur test et des retours vers les auteurs.
Plus d'informations
Si vous souhaitez une installation en parallèle de la version par défaut de PHP, cela est possible en utilisant les paquets préfixés php80 Voir le billet PHP 8.0 en Software Collection.
Vous pouvez aussi utiliser l'assistant de configuration.
Les paquets présents dans le dépôt seront utilisés comme sources pour Fedora 35 (si la demande de changement est acceptée).
En fournissant une pile complète, environ 130 extensions disponibles, 7 versions de PHP, paquets de base et SCL, pour Fedora et Enterprise Linux, et avec 300 000 téléchargements par jour, le dépôt remi est devenu en 15 ans une référence pour les utilisateurs de PHP sur les distributions RPM, maintenu par un contributeur actif aux différents projets (Fedora, PHP, PECL...).
Et aussi :