Aktuell liefern die beliebten Server Betriebssysteme Debian und CentOS kein PHP 5.4 bzw. 5.5. In diesem Tutorial möchte ich euch zeigen, wie euer System eine aktuellere PHP Version erhält.
→ Was sich in PHP 5.5.x geändert hat.
Standardmäßig installierte PHP Versionen:
- Debian 6 „Squeeze“ -> PHP 5.3.3
- Debian 7 „Wheezy“ -> PHP 5.4.4
- CentOS 5 -> PHP 5.1.6
- CentOS 6 -> PHP 5.3.3
Debian 6 „Squeeze“
Zuallererst möchte ich euch bitten Debian 6 „Squeeze“ auf Version 7 zu aktualisieren, Debian 7 „Wheezy“ ist bereits seit dem 04. Mai 2013 draußen.
Unter Debian 6 „Squeeze“ ist es möglich zumindest PHP 5.4 aus dem Dotdeb Repository zu installieren. Bearbeitet mit eurem gewohnten Editor /etc/apt/sources.list und fügt diese beiden Zeilen hinzu.
deb http://packages.dotdeb.org squeeze-php54 all
deb-src http://packages.dotdeb.org squeeze-php54 all
Jetzt laden wir den GnuPG Key für das Dotdeb Repository herunter und installieren diesen.
wget http://www.dotdeb.org/dotdeb.gpg -O - | apt-key add -
Nun installieren oder aktualisieren wir PHP 5.4.
apt-get update
apt-get install php5
Debian 7 „Wheezy“
Ein PHP Upgrade unter Debian 7 „Wheezy“ ist mit dem Dotdeb Repository bis auf die aktuellste Version PHP 5.5 möglich. Bearbeitet mit eurem gewohnten Editor /etc/apt/sources.list und fügt diese beiden Zeilen hinzu.
deb http://packages.dotdeb.org wheezy-php55 all
deb-src http://packages.dotdeb.org wheezy-php55 all
Jetzt laden wir den GnuPG Key für das Dotdeb Repository herunter und installieren diesen.
wget http://www.dotdeb.org/dotdeb.gpg -O - | apt-key add -
Nun installieren oder aktualisieren wir PHP 5.5.
apt-get update
apt-get install php5
Version prüfen (Stand: Februar 2014).
# php -v
PHP 5.5.9-1~dotdeb.1 (cli) (built: Feb 9 2014 19:39:50)
Copyright (c) 1997-2014 The PHP Group
Zend Engine v2.5.0, Copyright (c) 1998-2014 Zend Technologies
with Zend OPcache v7.0.3, Copyright (c) 1999-2014, by Zend Technologies
Downgrade bei Problemen
Sollten sich wider erwartet Fehler auf den Webseiten zeigen, könnt ihr die neuen Pakete löschen und die Distributions-PHP-Pakete wieder installieren.
Dotdeb PHP Pakete auflisten.
# dpkg -l | grep "php.*dotdeb"
ii libapache2-mod-php5 5.5.9-1~dotdeb.1 amd64 server-side, HTML-embedded scripting language (Apache 2 module)
ii php5 5.5.9-1~dotdeb.1 all server-side, HTML-embedded scripting language (metapackage)
ii php5-cgi 5.5.9-1~dotdeb.1 amd64 server-side, HTML-embedded scripting language (CGI binary)
ii php5-cli 5.5.9-1~dotdeb.1 amd64 command-line interpreter for the php5 scripting language
ii php5-common 5.5.9-1~dotdeb.1 amd64 Common files for packages built from the php5 source
ii php5-curl 5.5.9-1~dotdeb.1 amd64 CURL module for php5
ii php5-gd 5.5.9-1~dotdeb.1 amd64 GD module for php5
ii php5-imap 5.5.9-1~dotdeb.1 amd64 IMAP module for php5
ii php5-mcrypt 5.5.9-1~dotdeb.1 amd64 MCrypt module for php5
ii php5-mysql 5.5.9-1~dotdeb.1 amd64 MySQL module for php5
ii php5-xsl 5.5.9-1~dotdeb.1 amd64 XSL module for php5
Pakete löschen.
apt-get remove libapache2-mod-php5 php5 php5-cgi php5-cli php5-common php5-curl php5-gd php5-imap php5-mcrypt php5-mysql php5-xsl
Kommentiert das Dotdeb Repository aus.
[..]
# deb http://packages.dotdeb.org wheezy-php55 all
# deb-src http://packages.dotdeb.org wheezy-php55 all
[..]
Aktualisiert die Paketdatenbank und installiert die Distributions-Pakete wieder.
apt-get update
apt-get install libapache2-mod-php5 php5 php5-cgi php5-cli php5-common php5-curl php5-gd php5-imap php5-mcrypt php5-mysql php5-xsl
CentOS 5
Es gibt mehrere Repositories die PHP 5.5.x anbieten, zwei möchte ich hier beschreiben. Es gibt jedoch noch weitere, die Entscheidung überlasse ich euch.
Remi Repo
rpm -Uhv http://rpms.famillecollet.com/enterprise/remi-release-5.rpm
yum --enablerepo=remi-php55,remi update php\*
Webtatic Repo
rpm -Uvh http://mirror.webtatic.com/yum/el5/latest.rpm
yum install php55w php55w-opcache
Bei Abhängigkeitsproblemen hilft yum replace.
yum install yum-plugin-replace
yum replace php-common --replace-with=php55w-common
CentOS 6
Es gibt mehrere Repositories die PHP 5.5.x anbieten, zwei möchte ich hier beschreiben. Es gibt jedoch noch weitere, die Entscheidung überlasse ich euch.
Remi Repo
rpm -Uhv http://rpms.famillecollet.com/enterprise/remi-release-6.rpm
yum --enablerepo=remi-php55,remi update php\*
Webtatic Repo
rpm -Uvh http://mirror.webtatic.com/yum/el6/latest.rpm
yum install php55w php55w-opcache
Bei Abhängigkeitsproblemen hilft yum replace.
yum install yum-plugin-replace
yum replace php-common --replace-with=php55w-common
CentOS PHP 5.4 wird ebenfalls im Webtatic Repository angeboten, ersetzt einfach php55w mit php54w.