PHP 8.1 Installieren auf KeyHelp am ARM Server
PHP 8.1 Installieren auf KeyHelp am ARM Server
Gibt es eine Lösung, dass man bei Debian 12 / KeyHelp / ARM Server => PHP 8.1 nutzen könnte?
Derzeit ist Debian 12 mit PHP 8.2 möglich.
Gibt es dafür Möglichkeiten dafür und auch eine Lösung?
Re: PHP 8.1 Installieren auf KeyHelp am ARM Server
Florian Cheno
**************************************************************
Keyweb AG - Die Hosting Marke
Neuwerkstr. 45/46, 99084 Erfurt / Germany
http://www.keyweb.de - http://www.keyhelp.de
**************************************************************
Re: PHP 8.1 Installieren auf KeyHelp am ARM Server
Was evtl. gehen könnte:
php8.1 von sury installieren, und dann manuell php wieder auf 8.2 drehen.
Würde ich auf jeden Fall nicht auf einem Produktivsystem testen.
Ich ich mache es nach Feierabend mal auf meinem Dev-System, wenn es schief geht ist ein restore schnell gemacht.
Wenn es doch geht, kann ich meine Basteleien auf 8.4 umstellen

--
A Windows user reinstalls software every few weeks.
A Linux user reinstalls software every few weeks.
The difference is with Linux the version numbers change.
Re: PHP 8.1 Installieren auf KeyHelp am ARM Server
Also, es geht, aber für den Produktiveinsatz würde ich es niemandem empfehlen.
Das ist nur eine Information zum technischem Hintergrund, ich ermuntere niemanden, dass nachzumachen, ausser auf einem Bastelsystem im LAN oder einer VM!
Vorab: 2 PHP-Versionen gehen einfach, wenn man sie z.B. fur die CLI benötigt.
Wichtig ist, dass das php binary im System genau die Version hat, mit der Debian Bookworm ausgeliefert wird, PHP8.2, sonst funktioniert das Panel nicht mehr.
Also, dann mal zur Tat schreiten:
Das mit dem Editor eurer Wahl anlegen:
Code: Select all
#!/bin/sh
# To add this repository please do:
if [ "$(whoami)" != "root" ]; then
SUDO=sudo
fi
${SUDO} apt-get update
${SUDO} apt-get -y install lsb-release ca-certificates curl
${SUDO} curl -sSLo /tmp/debsuryorg-archive-keyring.deb https://packages.sury.org/debsuryorg-archive-keyring.deb
${SUDO} dpkg -i /tmp/debsuryorg-archive-keyring.deb
${SUDO} sh -c 'echo "deb [signed-by=/usr/share/keyrings/deb.sury.org-php.gpg] https://packages.sury.org/php/ $(lsb_release -sc) main" > /etc/apt/sources.list.d/php.list'
${SUDO} apt-get update
Code: Select all
vi sury.sh
Code: Select all
chmod +x sury.sh
./sury.sh
Code: Select all
apt install php8.4
Jetzt kommt der wichtige Schritt:
Code: Select all
update-alternatives --set php /usr/bin/php8.2
Code: Select all
❯ php --version
PHP 8.2.24 (cli) (built: Sep 27 2024 04:16:10) (NTS)
Copyright (c) The PHP Group
Zend Engine v4.2.24, Copyright (c) Zend Technologies
with the ionCube PHP Loader v13.3.0, Copyright (c) 2002-2024, by ionCube Ltd.
with SourceGuardian v15.0.1, Copyright (c) 2000-2024, by SourceGuardian Ltd.
with Zend OPcache v8.2.24, Copyright (c), by Zend Technologies
with Xdebug v3.2.0, Copyright (c) 2002-2022, by Derick Rethans
❯ php8.4 --version
PHP 8.4.0RC4 (cli) (built: Nov 16 2024 18:40:26) (NTS)
Copyright (c) The PHP Group
Zend Engine v4.4.0RC4, Copyright (c) Zend Technologies
with Zend OPcache v8.4.0RC4, Copyright (c), by Zend Technologies
Wenn ihr jedoch eine Webseite mit einer anderen PHP-Version ausliefern wollt, ist mehr Aufwand erforderlich, und ich rate für den Produktivbetrieb dringend davon ab, zum Spielen in einer VM ist es OK.
Als erstes braucht ihr PHP-fpm:
Code: Select all
apt install php8.4-fpm
Code: Select all
UPDATE `domains` SET `php_version` = '8.4' WHERE `domains`.`id` = 22
Code: Select all
WHERE domain="<fqdn>"
Oder ihr nehmt PhpMyAdmin.
Jetzt könnt ihr mit der
Code: Select all
keyhelp-toolbox
Ich habe dann die pool conf von keyhelp über die default conf kopiert:
Code: Select all
cp /etc/php/8.2/fpm/keyhelp_pool/tracer.conf /etc/php/8.4/fpm/pool.d/www.conf
Code: Select all
systemctl restart php8.4-fpm
mit dem Inhalt:
Code: Select all
<?php
phpinfo();
Jetzt schaut ihr in die error-log der betreffenden Domain, und seht, wo es klemmt:
Code: Select all
[Wed Nov 20 17:07:37.314476 2024] [proxy:error] [pid 9866:tid 9909] (2)No such file or directory: AH02454: FCGI: attempt to connect to Unix domain socket /run/php/keyhelp_tracer_php84.socket (keyhelp_tracer_php84.socket:8000) failed
Code: Select all
vi /etc/php/8.4/fpm/pool.d/www.conf
müsst ihr anpassen.
Dann nochmal den fpm Prozess neu starten, und es sollte klappen (Wenn ich in meinem Gedächtnisprotokoll nichts vergessen habe, ansonsten bitte nachhaken).
Ich hoffe, der eine oder andere kann etwas damit anfangen, ich fand es auf jeden Fall spannend, weil ich nicht wusste, was genau KeyHelp generiert, wenn der Interpreter dem System selber nicht bekannt ist.
--
A Windows user reinstalls software every few weeks.
A Linux user reinstalls software every few weeks.
The difference is with Linux the version numbers change.
Re: PHP 8.1 Installieren auf KeyHelp am ARM Server
Ah ok danke für die info.
wenn Updates erscheinen, wird es hier im Forum angekündigt, oder?
KeyHelp macht selbst Updates vom Control Panel oder?
- Jolinar
- Community Moderator
- Posts: 4003
- Joined: Sat 30. Jan 2016, 07:11
- Location: Weimar (Thüringen)
- Contact:
Re: PHP 8.1 Installieren auf KeyHelp am ARM Server
Ja
Ja
Data Collector für Community Support
___
Ich verwende zwei verschiedene Schriftfarben in meinen Beiträgen /
I use two different font colors in my posts:
- In dieser Farbe schreibe ich als Moderator und gebe moderative Hinweise oder begründe moderative Eingriffe /
In this color, I write as a moderator and provide moderative guidance or justify moderative interventions - In dieser Farbe schreibe ich als Community Mitglied und teile meine private Meinung und persönlichen Ansichten mit /
In this color, I write as a community member and share my personal opinions and views
Re: PHP 8.1 Installieren auf KeyHelp am ARM Server
Kurz: Wer einen zusätzlichen Interpreter braucht, kann den wie beschrieben installieren.
Aber: danach die sury Sourcen wieder löschen!
--
A Windows user reinstalls software every few weeks.
A Linux user reinstalls software every few weeks.
The difference is with Linux the version numbers change.
Re: PHP 8.1 Installieren auf KeyHelp am ARM Server
Re: PHP 8.1 Installieren auf KeyHelp am ARM Server
Mein System lief ja, wie es sollte, für mein Symfony-Bastelprojekt musste ich noch php8.4-mysql nachinstallieren, aber ansonsten alles easy.
Panel läuft, meine Seite lauft, schön.
Aber, ach …
Gestern wollte ich was im Panel nachsehen, Panel tot, 500er.
In dem php Logs stand nur, dass der Daemon unerwartet nach ein paar ms beendet wurde.
Hmm, also erst mal ein
Code: Select all
dpkg -l|grep php
Ufff.
PHP8.2 war noch drauf.
Und PHP8.3 war auch drauf, als neuer default.
php hatte eine feste Abhängigkeit gegen php8.3, und bei allen anderen Paketen war es identisch.
Hmm, OK, versucht, das ganze zu reparieren, die Sury Quellen gelöscht, PHP 8.3 gelöscht, aber:
8.2 war auch ausgetauscht, statt 8.2.24 war 8.2.26 auf dem System, 10 Minuten habe ich rumprobiert, ein Downgrade zu erzwingen, es dann als Zeitverschwendung abgetan, und die VM auf den Zustand zurückgesetzt bevor ich 8.4 eingespielt habe.
Ich brauche 8.4 nicht zwingend, meine Basteltrieb habe ich befriedigt, es ist möglich, einen anderen Interpreter zusätzlich einzuspielen und das Panel generiert passende Configs.
Nur sollte man danach tunlichst die Sury-Quellen deaktivieren, bevor ein Wartungsscript kommt und vermeintliche Updates einspielt …
Ich lasse es jetzt erstmal wie es ist, in 4 Wochen habe ich Urlaub, entweder mache ich es dann nochmal und befasse mich vorher apt-Pinning, oder evtl. ist bis dahin auch die KeyHelp Unterstützung für PHP-Interpreter auf ARM fertig.
Ansonsten halt noch mal wie oben beschrieben, und danach die Sury-Quellen löschen, oder sicherstellen, dass PHP8.2 nicht angefasst wird. Das sollte mit apt-pinning gehen, habe ich aber noch nie gemacht, wäre ein Grund, das im Urlaub mal zu lernen.
--
A Windows user reinstalls software every few weeks.
A Linux user reinstalls software every few weeks.
The difference is with Linux the version numbers change.