GNU/Linux >> LINUX-Kenntnisse >  >> Ubuntu

So wechseln Sie zwischen mehreren PHP-Versionen in Ubuntu

Dieses kurze Tutorial führt Sie durch die Schritte zum Wechseln zwischen mehreren PHP-Versionen in Ubuntu Linux und seinen Derivaten. Diese Anleitung wurde offiziell auf der Ubuntu 18.04 LTS Server Edition getestet. Es funktioniert möglicherweise auch mit anderen älteren oder neueren Ubuntu-Versionen.

Einführung

Manchmal funktioniert die neueste Version eines installierten Pakets möglicherweise nicht wie erwartet. Ihre Anwendung ist möglicherweise nicht mit dem aktualisierten Paket kompatibel und unterstützt nur eine bestimmte alte Version des Pakets.

In solchen Fällen können Sie das problematische Paket im Handumdrehen auf eine frühere funktionierende Version herunterstufen. Lesen Sie unsere alten Anleitungen zum Downgrade eines Pakets in Ubuntu und seinen Varianten hier und wie Sie ein Paket in Arch Linux und seinen Derivaten hier herunterstufen .

In einigen Situationen müssen Sie die problematischen Pakete nicht herunterstufen. Unter Linux können wir mehrere Versionen desselben Pakets gleichzeitig und nebeneinander verwenden.

Angenommen, Sie testen eine PHP-Anwendung im LAMP-Stack bereitgestellt in Ubuntu 18.04 LTS. Nach einer Weile stellen Sie fest, dass die Anwendung in PHP 5.6 einwandfrei funktioniert hat, aber nicht in PHP 7.2 (Ubuntu 18.04 LTS installiert standardmäßig PHP 7.x).

Werden Sie PHP oder den gesamten LAMP-Stack erneut installieren? Nicht erforderlich.

Sie müssen PHP nicht einmal auf eine frühere Version herunterstufen. Sie können einfach in wenigen Minuten zur vorherigen funktionierenden PHP-Version wechseln.

1. Zwischen mehreren PHP-Versionen wechseln

Lassen Sie uns die standardmäßig installierte Version von PHP mit dem Befehl überprüfen:

$ php -v

Beispielausgabe:

PHP 7.2.7-0ubuntu0.18.04.2 (cli) (built: Jul 4 2018 16:55:24) ( NTS )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies
with Zend OPcache v7.2.7-0ubuntu0.18.04.2, Copyright (c) 1999-2018, by Zend Technologies

Wie Sie sehen können, ist die installierte Version von PHP 7.2.7.

Nachdem Sie Ihre Anwendung einige Tage lang getestet haben, stellen Sie fest, dass Ihre Anwendung PHP 7.2 nicht unterstützt. In diesem Fall ist es eine gute Idee, sowohl die PHP 5.x-Version als auch die PHP 7.x-Version zu haben, damit Sie jederzeit problemlos zwischen unterstützten Versionen wechseln können.

Sie müssen PHP 7.x nicht entfernen oder den LAMP-Stack neu installieren. Sie können sowohl PHP 5.x- als auch 7.x-Versionen zusammen verwenden.

Ich nehme an, Sie haben PHP 5.6 noch nicht in Ihrem System deinstalliert. Für den Fall, dass Sie es bereits entfernt haben, können Sie es mit einem PPA wie unten erneut installieren.

Sie können PHP 5.6 von einem PPA installieren:

$ sudo add-apt-repository -y ppa:ondrej/php
$ sudo apt update
$ sudo apt install php5.6

1.1. Wechseln Sie von PHP 7.x zu PHP 5.x

1.1.1 Deaktivieren Sie zuerst das PHP 7.2-Modul mit dem Befehl:

$ sudo a2dismod php7.2

Beispielausgabe:

Module php7.2 disabled.
To activate the new configuration, you need to run:
systemctl restart apache2

1.1.2. Aktivieren Sie als Nächstes das PHP 5.6-Modul:

$ sudo a2enmod php5.6

1.1.3 Stellen Sie PHP 5.6 als Standardversion mit dem Befehl ein:

$ sudo update-alternatives --set php /usr/bin/php5.6

1.1.4. Alternativ können Sie den folgenden Befehl ausführen, um festzulegen, welche systemweite Version von PHP Sie standardmäßig verwenden möchten.

$ sudo update-alternatives --config php

1.1.5. Geben Sie die Auswahlnummer ein, um sie als Standardversion festzulegen, oder drücken Sie einfach die EINGABETASTE, um die aktuelle Auswahl beizubehalten.

1.1.6. Wenn Sie andere PHP-Erweiterungen installiert haben, legen Sie diese ebenfalls als Standard fest.

$ sudo update-alternatives --set phar /usr/bin/phar5.6

1.1.7. Starten Sie abschließend Ihren Apache-Webserver neu:

$ sudo systemctl restart apache2

Überprüfen Sie nun, ob PHP 5.6 die Standardversion ist oder nicht:

$ php -v

Beispielausgabe:

PHP 5.6.37-1+ubuntu18.04.1+deb.sury.org+1 (cli) 
Copyright (c) 1997-2016 The PHP Group
Zend Engine v2.6.0, Copyright (c) 1998-2016 Zend Technologies
with Zend OPcache v7.0.6-dev, Copyright (c) 1999-2016, by Zend Technologies

2. Wechseln Sie von PHP 5.x zu PHP 7.x

Ebenso können Sie von der Version PHP 5.x auf die Version PHP 7.x wechseln, indem Sie die folgenden Befehle nacheinander ausführen.

$ sudo a2enmod php7.2
$ sudo a2dismod php5.6
$ sudo update-alternatives --set php /usr/bin/php7.2
$ sudo systemctl restart apache2

Ein Wort der Vorsicht:

Die endgültige stabile Version von PHP 5.6 hat das Ende des aktiven Supports erreicht Stand:19. Januar 2017. PHP 5.6 wird jedoch bis zum 31. Dezember 2018 weiterhin Unterstützung für kritische Sicherheitsprobleme erhalten. Es wird daher empfohlen, alle Ihre PHP-Anwendungen so bald wie möglich zu aktualisieren, damit sie mit PHP 7 .x kompatibel sind.

Wenn Sie verhindern möchten, dass PHP in Zukunft automatisch aktualisiert wird, lesen Sie die folgende Anleitung.

  • Verhindern, dass ein Paket in Ubuntu automatisch installiert, aktualisiert oder entfernt wird

Und das ist alles für jetzt. Hoffe das hilft.


Ubuntu
  1. So wechseln Sie unter Ubuntu 20.04 LTS Focal Fossa zwischen mehreren GCC- und G++-Compilerversionen

  2. So installieren Sie PHP 8.0 unter Ubuntu 20.04 / Ubuntu 18.04

  3. So installieren Sie mehrere PHP-Versionen unter Ubuntu 18.04 LTS

  4. So installieren Sie PHP 7.2 auf Ubuntu 16.04

  5. So installieren / wechseln Sie zwischen mehreren Java-Versionen mit SDKMAN

So wechseln Sie zwischen Xorg und Wayland in Ubuntu

So wechseln Sie unter Debian zwischen mehreren Java-Versionen

So installieren Sie PHP 8.0 unter Ubuntu 20.04 / 18.04

So installieren Sie verschiedene PHP-Versionen (5.6, 7.x und 8.0) in Ubuntu

So installieren Sie PHP unter Ubuntu 22.04

So installieren Sie PHP unter Ubuntu 22.04