Comment installer PHP sur RHEL 8 / Centos 8 Linux

Comment installer PHP sur RHEL 8 / Centos 8 Linux

Dans les systèmes RHEL 8 / Centos 8 Linux, la façon dont les logiciels sont organisés ont changé: les packages critiques sont désormais contenus dans le Caves référentiel, tandis que le Appstream On contient plusieurs versions de certaines des applications et langages de programmation les plus courants qui sont organisés en modules et mis à jour indépendamment du cycle de libération de distribution. Cette stratégie a été adoptée afin d'éviter le problème d'être coincé avec une version de certains logiciels, trop dépassé ou trop récente d'un certain logiciel.

Dans ce tutoriel, vous apprendrez:

  • Comment installer PHP sur RHEL 8 / CENTOS 8
  • Quels sont les modules logiciels dans Rhel 8 / Centos 8
  • Comment installer et basculer entre différentes versions du module PHP
Modules PHP disponibles sur RHEL 8

Exigences et conventions logicielles utilisées

Exigences logicielles et conventions de ligne de commande Linux
Catégorie Exigences, conventions ou version logicielle utilisée
Système RHEL 8 / CENTOS 8
Logiciel Aucun logiciel supplémentaire n'est nécessaire pour suivre ce tutoriel
Autre Permission d'exécuter la commande avec les privilèges racine.
Conventions # - Exige que les commandes Linux soient exécutées avec des privilèges racine soit directement en tant qu'utilisateur racine, soit par l'utilisation de Sudo commande
$ - Exige que les commandes Linux soient exécutées en tant qu'utilisateur non privilégié régulier

Qu'est-ce que PHP?

PHP (PHP: Hypertext Preprocessor) n'a pas besoin de beaucoup de présentations: ce langage de programmation à usage général a été créé à l'origine en 1994 par Rasmus Lerdorf et il est publié sous la licence PHP, en tant que logiciel open source. Son champ d'application principal est le Web, mais la langue peut être utilisée dans d'autres contextes. RHEL 8 / CENTOS 8 est livré avec deux référentiels principaux activés: Caves et Appstream.

Le premier contient le noyau
paquets de la distribution qui suit le cycle de vie des distributions elle-même; Le second contient différentes versions de plusieurs applications d'espace utilisateur, qui sont mises à jour indépendamment de la distribution principale. Le logiciel contenu dans ce dernier est organisé en modules. Chaque module fournit différentes versions d'une application qui rend possible pour basculer entre les disponibles (mais pas pour les installer simultanément). Dans ce tutoriel, nous verrons à quel point il est facile d'installer PHP et de basculer entre les différentes versions de cette langue sur les distributions RHEL 8 / CentOS 8.

Quelle version php?

Tandis que le 5.6 La version de PHP est désormais officiellement morte (elle a atteint EOL le 1er janvier 2019), trois branches du langage de programmation sont actuellement maintenues: 7.1, qui ne reçoit en fait que des correctifs de sécurité et sera corrigé jusqu'au 1er décembre 2019, et les versions 7.2 et 7.3, qui sera soutenu respectivement jusqu'au 30 novembre 2020 et 6 décembre 2021.



La version de PHP fournie par défaut dans Rhel 8 / Centos 8, à partir du Appstream Le référentiel est 7.2.11, Comme nous pouvons vérifier en exécutant le dnf info php Commande, qui renvoie la sortie suivante:

Packages disponibles Nom: PHP Version: 7.2.11 version: 1.EL8 + 2002 + 9409c40c Arch: x86_64 Taille: 1.5 m Source: PHP-7.2.11-1.EL8 + 2002 + 9409C40C.SRC.RPM Repo: RHEL-8-FOR-X86_64-APPSTREAM-BETA-RPMS Résumé: Langue de script PHP pour la création de sites Web dynamiques URL: http: // www.php.Net / Licence: PHP et Zend et BSD et MIT et ASL 1.0 Description: PHP est un langage de script endetté HTML. PHP tente de le faire: facile pour les développeurs d'écrire des pages Web générées dynamiquement. PHP également: propose une intégration de base de données intégrée pour plusieurs systèmes de gestion commerciale et: non commerciale de base de données, donc l'écriture a: une page Web compatible de données avec PHP est assez simple. Le plus courant: l'utilisation du codage PHP est probablement en remplacement des scripts CGI. :: Le package PHP contient le module (souvent appelé mod_php): qui ajoute la prise en charge du langage PHP au serveur http Apache. 

Y a-t-il d'autres versions PHP disponibles dans le Appstream dépôt?. Pour répondre à cette question, nous pouvons exécuter une sous-commande dédiée de DNF, module, et demander des informations sur le module PHP, en utilisant le liste action:

$ sudo dnf Liste de module Php Red Hat Enterprise Linux 8 pour x86_64 - Appstream bêta (RPMS) Profils de flux de noms Résumé PHP 7.1 duvel, minimal, par défaut [d] langage de script php php 7.2 [D] DÉVELLAGE, MINIMALE, DEMAUTER [D] PHP SCRIPTING Language Astuce: [D] Efault, [E] NABLED, [X] Désactivé, [i] nstalled 

Lors de l'exécution du Liste des modules DNF Commande, par défaut, tous les modules disponibles sont affichés. Pour restreindre la requête à uniquement un module spécifique, nous fournissons le nom du module à la commande. Dans ce cas, nous pouvons voir que deux flux existent pour le module PHP, couvrant les versions 7.1 et 7.2 de la langue et des bibliothèques connexes. Comme nous l'avons vu, cette dernière version est celle qui est installée par défaut: dans la sortie de la commande que nous exécutons ci-dessus, celle-ci est mise en évidence par l'utilisation du [d] Mark dans la deuxième colonne qui, comme spécifié dans la légende, représente défaut.

Une autre partie intéressante de la sortie est le Profils colonne, où les profils disponibles pour un flux sont signalés. Plusieurs profils peuvent être installés simultanément et chacun d'eux comprend un ensemble différent de packages. Le [d] La notation est également utilisée ici pour marquer le profil par défaut sélectionné lors de l'installation du flux.

Pour installer le package d'un flux spécifique d'un module logiciel, nous devons utiliser le Nom: Stream / Profil notation. Par exemple, pour installer la version 7.1 de PHP, nous pouvons courir:

$ sudo dnf module installer php: 7.1 / par défaut


Dans ce cas, nous aurions pu omettre le nom de profil, puisque défaut est utilisé automatiquement si un autre n'est pas spécifié. Si nous utilisons la même commande que nous exécutons ci-dessus, nous pouvons maintenant voir que le 7.1 Le flux est marqué avec [e], qui signifie activé et le défaut Le profil du flux est marqué avec [je], ce qui indique que le profil du flux est installé:

$ sudo dnf Liste de module Php Red Hat Enterprise Linux 8 pour x86_64 - Appstream bêta (RPMS) Profils de flux de noms Résumé PHP 7.1 [e] DEVEL, MINIMALE, DEMAUT [D] [I] Langue de script PHP PHP 7.2 [D] DÉVELLER, MINIMALE, Langue de script PHP par défaut [D] 

Si nous avons un flux installé et que nous voulons passer à un autre des autres, nous pouvons simplement installer ce dernier: les packages seront mis à niveau ou rétrogradés automatiquement, selon la situation. Pour passer au 7.2 Stream, par exemple, nous courions:

$ sudo dnf module installer php: 7.2 / Default ============================================================== ==============================================. ==============================================. ==== Package Arch Version Repository Size ======================================================== ==============================================. ==============================================. ========== Mise à niveau: PHP-Common x86_64 7.2.11-1.EL8 + 2002 + 9409C40C RHEL-8-FOR-X86_64-APPSTREAM-BETA-RPMS 653 K PHP-MBSTRING X86_64 7.2.11-1.EL8 + 2002 + 9409C40C RHEL-8-FOR-X86_64-APPSTREAM-BETA-RPMS 580 K PHP-XML X86_64 7.2.11-1.EL8 + 2002 + 9409C40C RHEL-8-FOR-X86_64-APPSTREAM-BETA-RPMS 188 K PHP-FPM X86_64 7.2.11-1.EL8 + 2002 + 9409C40C RHEL-8-FOR-X86_64-APPSTREAM-BETA-RPMS 1.6 m php-json x86_64 7.2.11-1.EL8 + 2002 + 9409C40C RHEL-8-FOR-X86_64-APPSTREAM-BETA-RPMS 73 K PHP-CLI X86_64 7.2.11-1.EL8 + 2002 + 9409C40C RHEL-8-FOR-X86_64-APPSTREAM-BETA-RPMS 3.1 m Streams de module de commutation: PHP 7.1 -> 7.2 Résumé des transactions ============================================================================= ==============================================. ==============================================. ==== Mettre à niveau 6 packages Taille de téléchargement total: 6.2 m est-ce ok [y / n]: y 

De même, si nous voulons supprimer un flux de module spécifique, nous pouvons utiliser le retirer Action au lieu de celle «Installer». Cela entraîne la suppression d'un flux: si nous spécifions un profil, seuls les packages appartenant à ce profil sont supprimés, sinon, tous les profils d'un flux sont intéressés par l'action. Par exemple, pour désinstaller tous les packages appartenant à tous les profils du 7.2 Stream, nous courions simplement:



$ sudo dnf module supprimer PHP: 7.2

Pour supprimer uniquement les packages liés au se débrouiller Profil du même flux, nous courions à la place:

$ sudo dnf module supprimer PHP: 7.2 / DÉVELLER

Conclusions

La nouvelle version de Red Hat Enterprise Linux est livrée avec un changement dans la façon dont le logiciel est organisé. Le Caves Le référentiel contient les packages qui représentent le cœur des distributions et suivent son cycle de publication, le Appstream Au lieu de cela, contient un logiciel d'espace utilisateur organisé en modules fournissant différentes versions, ou «flux» disponibles pour être installés: PHP est également fourni de cette façon.

Les versions de PHP disponibles par
par défaut dans rhel 8 / centos 8 sont 7.1.20 et 7.2.11. Il est possible d'installer d'autres versions du langage de programmation à partir de référentiels externes, comme REMI, mais je recommande de m'en tenir aux sources de logiciels par défaut s'il n'est pas strictement nécessaire de faire autrement.

Tutoriels Linux connexes:

  • Choses à installer sur Ubuntu 20.04
  • Linux Apache n'exécute pas les fichiers PHP: solution
  • Choses à faire après l'installation d'Ubuntu 20.04 Focal Fossa Linux
  • Choses à installer sur Ubuntu 22.04
  • Une introduction à l'automatisation Linux, des outils et des techniques
  • Comment installer PHP sur Ubuntu Linux
  • Mint 20: Mieux que Ubuntu et Microsoft Windows?
  • Téléchargement Linux
  • Fichiers de configuration Linux: 30 premiers
  • Linux peut-il obtenir des virus? Exploration de la vulnérabilité de Linux…