PHP 5.6, 7.0 und 7.1 auf CentOS 7 installieren

Die PHP-Versionen unter RHEL sind steinalt: während Stand Dezember 2017 mindestens PHP 7.2.0, 7.1.12, 7.0.26 und 5.6.30 (nur noch Security-Fixes) verfügbar sind, wird

  • unter CentOS 6 / RHEL 6 PHP 5.3.3
  • unter CentOS 7 / RHEL 7 PHP 5.4.16

aus den Standard-Repositories geliefert - beide seitens PHP End of Life und auch unter CentOS 7 für viele PHP-basierende Anwendungen inzwischen zu alt. Damit scheidet z.B. der Einsatz eines aktuellen PIWIK aus, was mindestens von einem PHP 5.5.19 ausgeht. Zum Vergleich: die letzte 5.5er-Version ist 5.5.38 und bereits seit Mitte 2016 End of Life.

Hier hilft nur der Einsatz eines separaten Repositories. Wir haben sehr gute Erfahrungen mit dem Remi-Repo gemacht. Hier sind keine Handstände erforderlich: ist erst einmal die gewünschte Basis-Version ausgewählt, lässt sich einfach mit yum install php arbeiten. Ein weiterer Pluspunkt ist die Aktualität des Repos.

Bevor man eine neue PHP-Version installiert, sollte man eine vorhandene Konfiguration wegsichern und sich anschauen, welche PHP-Module installiert wurden:

cp --archive /etc/php.ini /etc/php.ini.bak
cp --archive --recursive /etc/php.d /etc/php.d.bak
yum list installed php*
yum remove php # plus list all other php-modules

So wird ein Upgrade auf eine aus dem Remi-Repo installierte PHP-Version durchgeführt, im Beispiel von 7.1 auf 7.2:

yum-config-manager --disable remi-php71
yum-config-manager --enable remi-php72
yum update

Installation von PHP 7.2

yum -y install \
    epel-release \
    http://rpms.remirepo.net/enterprise/remi-release-7.rpm
yum -y install yum-utils
# yum-config-manager --disable remi-php71
yum-config-manager --enable remi-php72
yum -y install php # plus list all other php-modules

Installation von PHP 7.1

yum -y install \
    epel-release \
    http://rpms.remirepo.net/enterprise/remi-release-7.rpm
yum -y install yum-utils
# yum-config-manager --disable remi-php70
yum-config-manager --enable remi-php71
yum -y install php # plus list all other php-modules

Installation von PHP 7.0

yum -y install \
    epel-release \
    http://rpms.remirepo.net/enterprise/remi-release-7.rpm
yum -y install yum-utils
# yum-config-manager --disable remi-php56
yum-config-manager --enable remi-php70
yum -y install php # plus list all other php-modules

Installation von PHP 5.6

yum -y install \
    epel-release \
    http://rpms.remirepo.net/enterprise/remi-release-7.rpm
yum -y install yum-utils
yum-config-manager --enable remi-php56
yum -y install php # plus list all other php-modules

Installation von PHP 5.4.16

Der Standard unter CentOS 7:

yum -y install php # plus list all other php-modules

Apache

Im Apache muss nun noch das richtige PHP-Modul geladen werden, also beispielsweise modules/libphp7.so statt modules/libphp5.so.


Related Posts

Published by

Thomas Keller

Thomas Keller

Just another HTMLy user.