Nachdem eine SSH-Verbindung hergestellt wurde ist die standardmäßig eingestellte PHP-Version PHP 7.1. Die Standard-Version des Accounts wird derzeit nicht berücksichtigt (was theoretisch möglich wäre, in dem wir Deine .bash_profile verändern, aber wir haben dazu bisher zu wenig Anfragen bekommen).
Per SSH kannst Du einfach statt dem normalen php
(ein Link zu /opt/lima-php/7.0/bin/php
) eine andere Version aufrufen:
[ lordoflima@lima-ssh ] ~
$> which php
/usr/local/bin/php
[ lordoflima@lima-ssh ] ~
$> ls -lh /usr/local/bin/php
lrwxrwxrwx 1 root root 25 Apr 6 15:08 /usr/local/bin/php -> /opt/lima-php/7.0/bin/php
[ lordoflima@lima-ssh ] ~
$> /opt/lima-php/7.2/bin/php -i | grep 7.2
PHP Version => 7.2.3
Die einfachste Möglichkeit, die PHP-Version dauerhaft zu ändern, ist die Anpassung der PATH-Umgebungsvariable.
Die einfachste Möglichkeit ist, die PATH-Umgebungsvariable zu erweitern, und zwar mit dem bin-Verzeichnis der gewünschten PHP-Version.
[ lordoflima@lima-ssh ] ~
$> php -i | grep 'PHP Version'
PHP Version => 7.1.15
[ lordoflima@lima-ssh ] ~
$> PATH="/opt/lima-php/7.2/bin:${PATH}"
[ lordoflima@lima-ssh ] ~
$> php -i | grep 'PHP Version'
PHP Version => 7.2.3
Um die Änderung dauerhaft zu machen trage die folgende Zeile (mit der entsprechenden PHP-Version eingesetzt) in der Datei .bash_profile
in Deinem Stamm-Verzeichnis ein, z.B. mit vim ~/.bash_profile
:
PATH="/opt/lima-php/7.2/bin:${PATH}"
Nach einem Neustart der SSH-Sitzung (die aktuelle .bash_profile
kann auch mit . ~/.bash_profile
in der laufenden Sitzung angewendet werden) ist die Änderung aktiv.
Um den "Standard" für Deinen Account zu ändern, kannst Du die .bash_profile
wie oben erwähnt anpassen. Dazu gibt es zwei Möglichkeiten, ein Alias oder einen eigenen "bin path" (z.B. ~/mybin), der im PATH eingetragen wird. Die Variante, den PATH zu ändern, dürfte eine bessere Kompatibilität ausweisen. Dazu legen wir ein Verzeichnis "binpath" an, erstellen darin einen Link zu einer spezifischen PHP-Version, den wir "php" nennen und fügen diesen zum PATH hinzu. Um die Änderung dauerhaft zu machen muss die Änderung des PATH als eigene Zeile in die .bash_profile eingetragen werden.
[ lordoflima@lima-ssh ] ~
$> mkdir -p ~/mybin
[ lordoflima@lima-ssh ] ~
$> PATH="$(echo ~)/mybin:${PATH}"
[ lordoflima@lima-ssh ] ~
$> ln -sf /opt/lima-php/7.0/bin/php ~/mybin/php
[ lordoflima@lima-ssh ] ~
$> php -i | grep 'PHP version'
PHP Version => 7.2.3
Hinweis: Wir empfehlen, die Variante PATH="$(echo ~)/mybin:${PATH}"
zu verwenden (wobei das ~ durch ein echo expandiert wird) anstatt PATH="~/mybin:${PATH}"
. Das hat den Grund, dass composer
als Shebang /usr/bin/env php
verwendet und env
das PHP-Executable nicht findet, wenn der Pfad nicht absolut angegeben wird. composer
verwendet dann die falsche PHP-Version (prüfbar mit composer -V -vvv
).