Mehrere PHP-Versionen in Plesk 12 und höher „Out of the Box“

Created:

2016-11-16 13:16:51 UTC

Modified:

2017-08-16 16:37:51 UTC

41

Was this article helpful?


Have more questions?

Anfrage einreichen

Mehrere PHP-Versionen in Plesk 12 und höher „Out of the Box“

Applicable to:

  • Plesk 12.5 for Linux
  • Plesk Onyx for Linux
  • Plesk 11.x for Linux
  • Plesk 12.0 for Windows
  • Plesk 12.0 for Linux
  • Plesk 12.5 for Windows

PHP 7 unter Plesk 12.5 "out of the box" veröffentlicht! Mehr dazu im Artikel #213929565

Warum sollte ich mehrere PHP-Versionen auf demselben Server ausführen wollen?

Es gibt mehrere Gründe dafür, warum Sie vielleicht einmal mehrere Versionen von PHP auf demselben Server ausführen müssen. Vielleicht führen Sie z. B. eine PHP-5.2-Anwendung auf Ihrem Server aus und müssen nun an einer anderen Anwendung arbeiten, die auf einem neuen Framework wie z. B. Symfony2 oder Lithium basiert. Oder Sie haben einen Kunden mit einer recht alten Website, die nur mit PHP 5.2 funktioniert, oder vielleicht wollen Sie einfach einige der neuen Funktionen testen. Genauso könnten Sie mit Ihrem Hosting auf ein modernes Betriebssystem umsteigen wollen, müssen aber einige Ihrer Websites auf einer alten PHP-Version behalten, die in Ihrem aktuellen Betriebssystem verfügbar ist.

Wie kann ich in Plesk 12.0 und 12.5 mehrere PHP-Versionen verwenden?

Mit Plesk 12.0 und Plesk 12.5 können Sie jetzt mehrere PHP5.x-Versionen installieren und verwenden. Diese wurden speziell vom Plesk Team via Plesk erstellt und benötigen keine zusätzlichen Drittanbieter-Repositorys. Ebenso müssen Sie nun PHP nicht mehr aus eigenen Quellen erstellen.

PHP-Pakete von Plesk beeinträchtigen und ersetzen keine anderen PHP-Pakete, d. h. Sie können auch Ihre aktuellen PHP-Builds oder die PHP-Pakete von Drittanbietern weiter verwenden.

Hinweis: Aktuell sind PHP-Pakete vom Plesk Team nur unter CentOS 6, CentOS 7 und Ubuntu 14 verfügbar!

Für Plesk 12.5 planen wir, die Liste der unterstützten Betriebssysteme um Ubuntu 12,14, Debian 7,8 und RHEL 6, 7 zu erweitern.

Schritt 1. Installieren Sie die gewünschten vom Plesk Team gepackten PHP-Versionen

  • Installation via grafische Benutzeroberfläche (GUI)

    Gehen Sie einfach zur Plesk Installer Benutzeroberfläche und wählen Sie die benötigten PHP-Versionen aus ( "Komponenten hinzufügen/entfernen" > "Web hosting features" > "Different PHP interpreters versions" ).

  • Installation via Befehlszeilenschnittstelle (CLI)

    #plesk sbin autoinstaller --select-product-id plesk --select-release-current  --install-component php5.6

Hinweis: Die Komponente "PHP 5 support (from OS vendor)" kann nicht entfernt werden, auch wenn sie nicht mehr benötigt wird.

Hinweis: Momentan ist der PHP-FPM-Handler kein Bestandteil der Plesk PHP-Pakete. Dies wird jedoch ab Plesk 12.5 geändert, sodass Sie dann auch die nötigen PHP-FPM-Versionen auswählen können.

Schritt 2. Wählen Sie die nötigen PHP-Versionen in Ihren Service-Paketen und Website-Einstellungen aus.

Nach der Installation stehen die neuen PHP-Versionen in den Service-Paketen und Website-Hosting-Einstellungen zur Auswahl.

Umstellen von Websites auf das vom Plesk Team gepackte PHP

PHP-Pakete vom Plesk Team ersetzen keine bereits installierten PHP-Versionen und aktualisieren auch keine bestehenden Service-Pakete und Websites. Wenn Sie bereits PHP-Pakete aus Drittanbieter-Repositorys verwenden und mit Ihren Websites auf das vom Plesk Team gepackte PHP umsteigen wollen, müssen Sie dies manuell tun. Ihnen steht dazu die Plesk Benutzeroberfläche oder die Plesk Befehlszeilenschnittstelle zur Auswahl.

Nachfolgend sei eine einfache Methode genannt. Nehmen wir an, wir wollen alle Websites von "PHP 5.3 fastcgi" aus dem CentOS 6 Repository auf das vom Plesk Team gepackte "PHP 5.4 fastcgi" umstellen.

  • Überprüfen Sie, ob sowohl der neue als auch der alte PHP-Handler in Plesk registriert ist, indem Sie diesen Befehl aufrufen:
    /usr/local/psa/bin/php_handler --list.

Sehen Sie sich die Einträge in der Spalte "display name" an.

  • Stellen Sie alle Websites auf den neuen PHP-Handler um (wie es aus den Einträgen in der Spalte "id" hervorgeht):
    /usr/local/psa/bin/php_handler --replace -old-id fastcgi -new-id plesk-php54-fastcgi.

Sollte etwas mit der Umstellung nicht wie geplant verlaufen, können Sie das angefügte Hilfsdienstprogramm verwenden, um den aktuellen Status zu überprüfen und die Handler umzustellen. Sie müssen es aber als Benutzer root ausführen.

Folgender Befehl zeigt alle Domains und Handler, die aktuell verwendet werden:

#php php_management_tool list

Der nachfolgende Befehl stellt alle Domains, die einen spezifischen PHP-Handler verwenden, von einem Handler auf einen anderen um (Angabe des alten Handlers mit der Option --from , neuer Handler: Option --to ):

#php php_management_tool move --from=fastcgi-54 --to=plesk-php54-fastcgi

Der folgende Befehl stellt die angegebenen Domains auf den PHP-Handler um, der mit der Option --to angegeben wird:

#php php_management_tool move --to=plesk-php56-cgi --domains=module.a10-52-53-101.qa.plesk.ru,module.tld

Technische Details

PHP-Pakete vom Plesk Team beeinträchtigen keinerlei Pakete von anderen Drittanbieter-Repositorys. Die Namen der Pakete haben das Präfix "plesk-php". Sie können einen der folgenden Befehle verwenden, um zu prüfen, welche PHP-Pakete des Plesk Teams auf dem Server installiert sind.

rpm -qa|grep "plesk-php"

unter Ubuntu/Debian

dpkg -l|grep "plesk-php"

Alle Dateien werden im Verzeichnis /opt/plesk/php/<version> installiert.

Die Datei php.ini befindet sich in /opt/plesk/php/<version>/etc

Um zu überprüfen, welche PHP-Handler aktuell in Plesk registriert sind, können Sie diesen Befehl verwenden:

/usr/local/psa/bin/php_handler --list

Wie Sie " devel "-Pakete installieren

Wenn Sie zum Beispiel das " devel "-Paket für Plesk PHP installieren wollen, müssen Sie mithilfe des Paketmanager-Tools des Systems (yum oder apt) das jeweilige plesk-phpXX-devel-Paket für die entsprechende PHP-Version installieren:

# yum install plesk-php56-devel

oder

# apt-get install plesk-php56-devel

Hinzufügen benutzerdefinierter PHP-Module in Plesk

Um ein Modul hinzuzufügen, müssen Sie zuerst die erforderlichen Pakete herunterladen und installieren, anschließend das Modul erstellen und es zum Schluss für die entsprechende PHP-Version aktivieren. Dabei weichen die Schritte zum Erstellen des Moduls nur gering von der üblichen PHP-Anleitung ab ( hier zu finden ) – achten Sie einfach auf die benutzerdefinierten Pfade, die Sie verwenden müssen.

Das nachfolgende Beispiel veranschaulicht das Prinzip, indem das memcached-Modul für PHP 5.6 hinzugefügt wird. Die Befehle im Beispiel sind jene für CentOS 7, aber Sie können diese Funktionalität auch auf anderen Betriebssystemen verwenden. Sie müssen unter Umständen die Paketnamen geringfügig ändern, aber das zugrunde liegende Prinzip bleibt dasselbe.

Downloaden und installieren Sie die nötigen Pakete:

# yum search plesk-php devel
# yum install make plesk-php56-devel gcc glibc-devel libmemcached-devel zlib-devel

Erstellen Sie anschließend das Modul:

# /opt/plesk/php/5.6/bin/pecl install memcached

(wenn Sie nach dem libmemcached-Verzeichnis gefragt werden, geben Sie nichts ein und drücken die Entertaste)

Tragen Sie das Modul für die entsprechende PHP-Version ein:

# echo "extension=memcached.so" > /opt/plesk/php/5.6/etc/php.d/memcached.ini

Überprüfen Sie zum Schluss, ob das Modul aktiviert ist:

# /opt/plesk/php/5.6/bin/php -i | grep "memcached support"
memcached support => enabled

Mögliche Probleme und Einschränkungen

  • Plesk Mirror Tool. Wenn Sie einen Plesk Repository Mirror verwenden, sollten Sie das Tool mithilfe des Artikels /de/113337 aktualisieren. Die aktuelle Version ist 1.4.

  • Die PHP-FPM- und PHP-Apache-Module sind nicht in den PHP-Paketen des Plesk Teams enthalten.

  • Für alte Betriebssysteme sind keine PHP-Pakete vom Plesk Team verfügbar. Aktuell sind PHP-Pakete vom Plesk Team nur unter CentOS 6, CentOS 7 und Ubuntu 14 verfügbar. Ab Plesk 12.5 werden wir die Liste der unterstützten Betriebssysteme um Ubuntu 12 und Debian Betriebssysteme erweitern.

Ihr Feedback zum Mehrfach-PHP-Feature können Sie in diesem Plesk Forum-Thread (EN) posten

Verweise

php_management_tool , Dienstprogramm zum Verwalten von PHP-Handlern pro Domain über die CLI.

Plesk Mirror Tool , Dienstprogramm zum Verwalten des Plesk Repository Mirrors.

Plesk Forum-Thread für offene Diskussionen (EN)

Kapitel "PHP-Verwaltung" im Handbuch für Administratoren (EN)

Attachments:

Haben Sie Fragen? Anfrage einreichen
Bitte melden Sie sich an, um einen Kommentar zu hinterlassen.