Ispconfig mit mehrern PHP-Versionen

tsaenger

Member
Hallo zusammen,
ich versuche mein ISPconfig mit mehreren PHP-Versionen (apt) umzustellen.
Bisher hatte ich es mit selbst compilierten Versionen am laufen. Hier ist das updaten aber sehr mühsam.
Nun habe ich einen ISPConfig3 Server nach dieser Anleitung installiert.
https://www.howtoforge.com/perfect-server-debian-10-buster-apache-bind-dovecot-ispconfig-3-1/
Anschließend habe ich diese Anleitung https://www.taste-of-it.de/ispconfig-mehrere-php-versionen-von-sury-org/
durchgeführt.
was mich wundert: Warum muss ich nun keine Ports mehr für PHP im start-Script vergeben?
Wenn ich nun eine Webseite zw. php7.3 und 7.4 wechsel passiert leider nichts. phpinfo zeige immer die alte 7.3 an.

Schaue ich mir an, ob php-fpm 7.4 läuft:
Code:
root@ispconfig2:/etc/apache2/conf-enabled# ps -aux | grep php
root       198  0.0  0.4 454692 45432 ?        Ss   18:28   0:00 php-fpm: master process (/etc/php/7.0/fpm/php-fpm.conf)
root       210  0.0  0.4 535332 39152 ?        Ss   18:28   0:00 php-fpm: master process (/etc/php/7.3/fpm/php-fpm.conf)
root       211  0.0  0.4 568884 37936 ?        Ss   18:28   0:00 php-fpm: master process (/etc/php/7.4/fpm/php-fpm.conf)
www-data   627  0.0  0.0 568884  8976 ?        S    18:28   0:00 php-fpm: pool www
www-data   628  0.0  0.0 568884  8976 ?        S    18:28   0:00 php-fpm: pool www
www-data   630  0.0  0.1 454692 10556 ?        S    18:28   0:00 php-fpm: pool www
www-data   631  0.0  0.1 454692 10556 ?        S    18:28   0:00 php-fpm: pool www
web200     637  0.0  0.5 778220 48316 ?        S    18:28   0:00 php-fpm: pool web200
web200     638  0.0  0.5 780324 49680 ?        S    18:28   0:00 php-fpm: pool web200
www-data   639  0.0  0.1 535320  9300 ?        S    18:28   0:00 php-fpm: pool www
www-data   640  0.0  0.1 535320  9300 ?        S    18:28   0:00 php-fpm: pool www
ispconf+  1701  0.0  0.4 437108 43532 ?        Ss   18:35   0:00 /usr/bin/php-cgi7.0 -d disable_classes= -d disable_functions= -d magic_quotes_gpc=off -d open_basedir= -d session.save_path=/usr/local/ispconfig/interface/temp
ispconf+  1702  0.0  0.2 437776 19136 ?        S    18:35   0:00 /usr/bin/php-cgi7.0 -d disable_classes= -d disable_functions= -d magic_quotes_gpc=off -d open_basedir= -d session.save_path=/usr/local/ispconfig/interface/temp

sieht es doch richtig aus.
sites die in Apache2 enabled sind:
Code:
apache2-doc.conf  charset.conf  httpoxy.conf  javascript-common.conf  localized-error-pages.conf  mailman.conf  other-vhosts-access-log.conf  phpmyadmin.conf  roundcube.conf  security.conf  serve-cgi-bin.conf  squirrelmail.conf
Module die enabled sind:
Code:
root@ispconfig2:/etc/apache2/mods-enabled# ls
access_compat.load  auth_basic.load   authz_host.load  dav.load      dir.conf      fcgid.conf    mime.conf         negotiation.load  php8.1.load      reqtimeout.conf  socache_shmcb.load  suexec.load
actions.conf        auth_digest.load  authz_user.load  dav_fs.conf   dir.load      fcgid.load    mime.load         passenger.conf    proxy.conf       reqtimeout.load  ssl.conf            suphp.conf
actions.load        authn_core.load   autoindex.conf   dav_fs.load   env.load      filter.load   mpm_prefork.conf  passenger.load    proxy.load       rewrite.load     ssl.load            suphp.load
alias.conf          authn_file.load   autoindex.load   deflate.conf  fastcgi.conf  headers.load  mpm_prefork.load  perl.load         proxy_fcgi.load  setenvif.conf    status.conf
alias.load          authz_core.load   cgi.load         deflate.load  fastcgi.load  include.load  negotiation.conf  php8.1.conf       python.load      setenvif.load    status.load

An welcher stelle mach ich da einen Fehler?

Kann mir bitte jemand helfen?

Vielen Dank
Tobias
 

tsaenger

Member
Hallo Toll,
vielen Dank.
Ich habe es nochmal mach dem HowTo gemacht. PHP-Versionen habe ich mit --reinstall erneut installiert.

Leider klappt es noch immer nicht.

Ich habe aktuell nur Versionen 5.6, 7.0,7.3 und 7.4 installiert.
Wenn ich in ISPConfig die Version umstelle klappte es nicht. Dann versuche ich
mit
service php7.4-fpm restart
php 7.4 neu zu starten und bekomme aber diese Meldung.
Code:
Mar 24 22:12:35 ispconfig2 systemd[1]: Starting The PHP 7.4 FastCGI Process Manager...
Mar 24 22:12:35 ispconfig2 php-fpm7.4[20646]: [24-Mar-2022 22:12:35] ERROR: Another FPM instance seems to already listen on /var/lib/php5-fpm/web200.sock
Mar 24 22:12:35 ispconfig2 php-fpm7.4[20646]: [24-Mar-2022 22:12:35] ERROR: FPM initialization failed

Erst wenn ich jetzt php7.3 stoppe,
service php7.3-fpm stop
dann kann ich 7.4 starten und es wird auch ausgeliefert.
Wie aber bekomme ich es hin das die Versionen Zeitgleich laufen?
Damals als ich es selber compiliert habe musste ich ein init-Script erstellen und jeden PHP-Prozess auf einen separaten Port legen. Davon steht aber in den Versionen nichts. Ich vermute das dies eigentlich sury-php erledigen sollte.

Bitte um weitere Hilfe.

Vielen Dank.

Gruß Tobias
 

Till

Administrator
Das bedeutet dass Du entweder falsche Einstellungen für die PHP Versionen in ISPConfig gemacht hast oder sie per inetd statt systemd geestartet hast. Vergleiche also nochmal Deine Einstellungen mit denen des Tutorials indbesondere das "Path to the PHP-FPM init script: php7.4-fpm" und stelle sicher dass die php-fpm nur per systemd gestartet wurden und nicht mit inetd, denn systemd kann leine prozesse restarten die per inetd gestartet wurden.
 

Werbung

Top