Anpassen der PHP-CLI-Version

Manche Skript rufen die CLI-Variante von PHP auf. Oft wird hier eine bestimmte Version benötigt. Um die richtige Version auf Ihrem Managed Server einzustellen, gehen Sie wie folgt vor:

über pd-admin (bevorzugte Methode)

Melden Sie sich mit Ihrem Reseller-Account an und gehen von dort in Endkundenmenü. Oder melden Sie sich direkt in Ihrem Endkunden-Account an.

Unter Allgemein -> PHP-CLI können Sie die PHP-CLI Version setzen. Dabei können Sie wählen, ob die Standard php.ini verwendet werden soll oder die php.ini im Home-Verzeichnis des Nutzers. Die php.ini im Home-Verzeichnis des Nutzers können Sie mit dem php.ini-Editor bearbeiten.

manuell, per SSH (alte Methode)

Loggen Sie sich per SSH in den Account ein, unter dem Sie die PHP-Skripte ausführen möchten, und führen Sie bitte die folgenden Befehle aus:

mkdir -p ~/bin
ln -s /usr/local/pd-admin2/bin/php5-5.6-cli ~/bin/php
chmod +x ~/bin/php

Unter /usr/local/pd-admin2/bin/ stehen Ihnen auch die CLI binaries anderer Versionen zur Verfügung. Für PHP 7.0 verwenden Sie z.B.

ln -s /usr/local/pd-admin2/bin/php-7.0-cli ~/bin/php

Anschließend muss die PATH Variable angepasst werden:

vi ~/.bash_profile

Suchen Sie die Zeile

PATH=$PATH:$HOME/.local/bin:$HOME/bin

und ändern diese um in

PATH=$HOME/bin:$PATH:$HOME/.local/bin

Anschließend müssen Sie sich einmal neu einloggen, damit die Änderungen übernommen werden.

PHP-CLI mit php.ini

Wenn Sie die PHP-CLI ausführen, wird immer eine default php.ini geladen. Zum Laden einer eigenen php.ini müssen Sie diese mit -c angeben:

php -c ~/php.ini

Damit Sie dies nicht immer eintippen müssen oder Applikationen die richtige php.ini Datei laden, können Sie sich mit einem Skript Abhilfe verschaffen. Gehen Sie dazu wie folgt vor:

  1. Löschen Sie die php Verlinkung unter ~/bin:
rm ~/bin/php
  1. Legen Sie nun ein Skript als ~/bin/php mit folgendem Inhalt an:
#!/bin/bash
exec /usr/local/pd-admin2/bin/php5-5.6-cli -c ~/php.ini "$@"

Damit das Skript nutzbar ist, muss dies ausführbar gemacht werden:

chmod +x ~/bin/php

Nun wird jedes Mal bei Ausführung von php die php.ini aus dem Heimatverzeichnis des Nutzers geladen. Dies können Sie auch mit folgendem Kommando prüfen:

php -i | grep php.ini
Configuration File (php.ini) Path => /usr/local/pd-admin2/php-7.0/lib
Loaded Configuration File => /home/<einNuter>/php.ini

Der Pfad unter Loaded Configuration File sollte nun auf die gewünschte php.ini zeigen.