PHP 8.1 est une mise à jour importante du langage PHP publiée le 25 novembre 2021. Il s'agit d'une mise à niveau standard à l'avenir à partir de la version PHP 8.0 existante. Le nouveau PHP 8.1 apporte les énumérations, les fibres, le type ne jamais retourner, les constantes de classe finales, les types d'intersection et les propriétés en lecture seule parmi la longue liste de nouvelles fonctionnalités et modifications.
Dans le didacticiel suivant, vous apprendrez à installer PHP 8.1 sur Fedora 36 Linux en important le référentiel REMI. Le didacticiel installera les extensions du kit de développement et quelques astuces pour Nginx et PHP-FPM à l'aide du terminal de ligne de commande.
Mettre à jour Fedora
Avant de continuer, il est conseillé à votre système de s'assurer que tous les packages existants sont à jour pour éviter les conflits système pendant l'installation et pour une bonne maintenance du système.
sudo dnf upgrade --refresh -y
Installer/Importer le référentiel PHP 8.1 Remi
Pour installer l'importation et installer le dépôt Remi, utilisez le (dnf) suivant commande terminal :
sudo dnf install http://rpms.remirepo.net/fedora/remi-release-36.rpm -y
Situationnel - Supprimer l'installation PHP existante
Pour les utilisateurs souhaitant installer PHP 8.1 mais ayant déjà installé PHP ou PHP-FPM, il est souvent préférable de supprimer la version précédente au lieu de simplement changer le module et de mettre à jour aveuglément. Par exemple, supprimez PHP 8.0 pour PHP 8.1.
Assurez-vous de sauvegarder tous les fichiers de configuration.
sudo dnf remove php php-fpm -y
Pour les utilisateurs de PHP-FPM, arrêtez le service.
sudo systemctl stop php-fpm
Supprimez ensuite le reste des extensions de package.
sudo dnf remove php* -y
Pour réinitialiser la liste des modules PHP, rien de plus simple avec la commande suivante :
sudo dnf module list reset php -y
Activer le référentiel PHP 8.1 (Remi)
PHP 8.0 est le choix PHP par défaut pour les installations standard de Fedora 36.
Une astuce rapide consiste à utiliser le (list php) commande pour voir les options disponibles et la valeur par défaut.
La commande de liste de modules dnf suivante peut le faire :
sudo dnf module list php
Vous obtiendrez la sortie suivante comme ci-dessous.
Exemple :
Ensuite, activez PHP 8.1 avec la commande suivante :
sudo dnf module enable php:remi-8.1 -y
Installer PHP 8.1
Maintenant que vous avez ajouté le référentiel Remi PHP et activé PHP 8.1 comme version par défaut sur votre système Fedora, vous pouvez installer PHP 8.1 avec la commande suivante :
Utilisateurs d'Apache (HTTPD) :
sudo dnf install php php-cli
Utilisateurs Nginx :
sudo dnf install php-fpm php-cli
Facultativement, si vous souhaitez installer les extensions les plus couramment utilisées pour PHP 8.1, choisissez celles qui s'appliqueraient le mieux à votre situation de développement ou d'exécution de vos services.
sudo dnf install php-cli php-fpm php-curl php-mysqlnd php-gd php-opcache php-zip php-intl php-common php-bcmath php-imagick php-xmlrpc php-json php-readline php-memcached php-redis php-mbstring php-apcu php-xml php-dom php-redis php-memcached php-memcache
NE PAS COPIER ET COLLER TOUTE LA COMMANDE DES EXTENSIONS CI-DESSUS.
INSTALLEZ UNIQUEMENT LES MODULES EN OPTION DONT VOUS AVEZ BESOIN À DES FINS DE SÉCURITÉ ET DE PERFORMANCE.
Enfin, utilisez la commande suivante pour toute personne intéressée par l'installation de la branche de développement.
sudo dnf install php-devel -y
Maintenant que vous avez installé PHP 8.1 et les extensions, vérifiez la version avec la commande suivante :
php -v
Exemple de résultat :
Installations PHP-FPM de PHP 8.1
Contrairement aux installations PHP-FPM sur Debian/Ubuntu qui utilisent les (www-data) utilisateur, ce n'est pas le cas avec les installations de la famille RHEL. Par défaut sur Fedora, le service PHP-FPM est conçu pour être exécuté (Apache) user, ce qui est incorrect puisque nous utilisons Nginx, et cela devait être corrigé.
Tout d'abord, ouvrez suivant (www.conf) fichier de configuration :
sudo nano /etc/php-fpm.d/www.conf
Ensuite, remplacez le (Apache) utilisateur et groupe avec le (Nginx) utilisateur et groupe :
Pour enregistrer, appuyez sur (CTRL+O) puis quittez (CTRL+X) .
Maintenant, vous allez également recharger ou redémarrer votre service PHP-FPM :
sudo systemctl restart php-fpm
Configuration Nginx
Le bloc serveur Nginx a besoin de l'exemple suivant ci-dessous pour que Nginx traite les fichiers PHP.
Ci-dessous, exemple pour tous les serveurs{} blocs qui traitent les fichiers PHP qui ont besoin de l'emplacement ~ .php$ ajouté.
emplacement location ~ \.php$ {
try_files $uri =404;
fastcgi_pass unix:/run/php-fpm/www.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
Testez Nginx pour vous assurer que vous n'avez aucune erreur avec les ajustements effectués avec le code ci-dessus ; entrez ce qui suit.
sudo nginx -t
Exemple de résultat :
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
Redémarrez le service Nginx pour que l'installation soit terminée.
sudo systemctl restart nginx