Red Hat va fournir PHP 5.4 pour RHEL-6
Annonce officielle : Red Hat Software Collections 1.0 Beta Now Available
Plus d'informations sur les Software Collections
- Software Collections Guide (Fedora project)
Que les accrocs de la stabilité se rassurent, PHP 5.3.3 reste la version standard fournit avec RHEL-6.
Nous disposerons donc bientôt d'un moyen officiel et supporté d'installer PHP version 5.4, en parallèle de la version système, sans affecté les composants standards. L'annonce prévoit un cycle de vie de 3 ans.
il s'agit pour l'instant uniquement d'une version Beta destinée à l'évaluation.
Installation
Activation du canal de distribution (nécessite une souscription active) depuis l'interface web RHN ou en ligne de commande :
# rhn-channel --add --channel=rhel-x86_64-server-6-rhscl-1-beta
Installation du meta-paquet et des composants par défaut :
# yum install php54
...
======================================================================================================================================================
Package Arch Version Repository Size
======================================================================================================================================================
Installing:
php54 x86_64 1-7.el6 rhel-x86_64-server-6-rhscl-1-beta 3.3 k
Installing for dependencies:
php54-php-cli x86_64 5.4.14-3.el6 rhel-x86_64-server-6-rhscl-1-beta 2.6 M
php54-php-common x86_64 5.4.14-3.el6 rhel-x86_64-server-6-rhscl-1-beta 566 k
php54-php-pear noarch 1:1.9.4-7.el6 rhel-x86_64-server-6-rhscl-1-beta 370 k
php54-php-process x86_64 5.4.14-3.el6 rhel-x86_64-server-6-rhscl-1-beta 45 k
php54-php-xml x86_64 5.4.14-3.el6 rhel-x86_64-server-6-rhscl-1-beta 109 k
php54-runtime x86_64 1-7.el6 rhel-x86_64-server-6-rhscl-1-beta 1.0 M
Transaction Summary
======================================================================================================================================================
Install 7 Package(s)
Total download size: 4.7 M
Installed size: 0
Is this ok [y/N]: y
C'est tout ;)
Utilisation
La version par défaut reste la 5.3.3
# php -v
PHP 5.3.3 (cli) (built: Nov 29 2012 04:12:23)
Copyright (c) 1997-2010 The PHP Group
Zend Engine v2.3.0, Copyright (c) 1998-2010 Zend Technologies
Il faut donc "explicitement" demander l'utilisation de la version SCL, manière standard (pour les SCL) :
# scl enable php54 "php -v"
PHP 5.4.14 (cli) (built: May 23 2013 07:42:19)
Copyright (c) 1997-2013 The PHP Group
Zend Engine v2.4.0, Copyright (c) 1998-2013 Zend Technologies
On peut aussi (dans le cas de cette collection, pas forcément pour les autres) :
# /opt/rh/php54/root/usr/bin/php -v
PHP 5.4.14 (cli) (built: May 23 2013 07:42:19)
Copyright (c) 1997-2013 The PHP Group
Zend Engine v2.4.0, Copyright (c) 1998-2013 Zend Technologies
Vous pouvez aussi activer la collection de manière permanente
# source /opt/rh/php54/enable
# php -v
PHP 5.4.14 (cli) (built: May 23 2013 07:42:19)
Copyright (c) 1997-2013 The PHP Group
Zend Engine v2.4.0, Copyright (c) 1998-2013 Zend Technologies
Utilisation avec Apache
Plusieurs solutions sont possibles, voyons uniquement le cas de l'utilisation de mod_php
# yum install php54-php
Attention : apache ne peut pas charger 2 fois le module php5, donc si le module standard est présent, au lancement vous obtiendrez le message
[Sun Jun 16 16:51:01 2013] [warn] module php5_module is already loaded, skipping
Il faut donc désinstaller (ou désactiver) le module standard et ensuite Apache utilisera le PHP 5.4 de la collection.
Conclusion
Il s'agit pour moi d'une nouveauté particulièrement intéressante qui va sans doute aider à l'adoption d'une version récente de PHP dans le monde de l'entreprise.
Les utilisateurs de CentOS ou des autres clones pourront aussi essayer les paquets mis à disposition sur le site du projet communautaire : Software Collections
Questions, sans réponse pour l'instant :
- Pour CentOS, ces paquets seront-ils mis à disposition dans un dépôt officiel ou tiers (comme celui de tru pour DTS) ?
- Aura-t-on aussi par la suite une collection php55 ?
- Aura-t-un des paquets pour RHEL-5 ?
- Aura-t-on des extensions complémentaires dans EPEL ?
- Quelle sera la version finale embarquée ?