Pour installer des anciennes versions de PHP sur Debian 12 en vue de les utiliser avec ISPConfig 3.2, voici les étapes détaillées. Nous utiliserons les dépôts de Sury, qui maintiennent des versions plus anciennes de PHP.
Étapes d’installation :

Ajouter le dépôt Sury

Les anciennes versions de PHP ne sont plus disponibles dans les dépôts officiels de Debian 12. Vous devez donc ajouter le dépôt Sury, qui maintient des versions rétrocompatibles de PHP.

Mettez à jour la liste des paquets et installez les dépendances nécessaires :

bash
apt update
apt install -y lsb-release apt-transport-https ca-certificates software-properties-common

Ajoutez le dépôt Sury :

bash

wget -qO - https://packages.sury.org/php/apt.gpg | apt-key add -
echo "deb https://packages.sury.org/php/ $(lsb_release -sc) main" | tee /etc/apt/sources.list.d/sury-php.list

Mettez à jour la liste des paquets :

bash

apt update
  1. Installer des versions spécifiques de PHP

Maintenant que le dépôt est ajouté, vous pouvez installer différentes versions de PHP (par exemple 7.4, 8.0, etc.). Vous pouvez spécifier les versions souhaitées lors de l’installation.

Pour installer PHP 7.4 :

bash
apt install -y php7.4 php7.4-cli php7.4-fpm php7.4-mysql php7.4-curl php7.4-zip php7.4-gd php7.4-mbstring php7.4-xml php7.4-soap php7.4-intl php7.4-bcmath php7.4-opcache

Pour installer PHP 8.0 (ou une autre version) :

bash

apt install -y php8.0 php8.0-cli php8.0-fpm php8.0-mysql php8.0-curl php8.0-zip php8.0-gd php8.0-mbstring php8.0-xml php8.0-soap php8.0-intl php8.0-bcmath php8.0-opcache

Configurer ISPConfig pour utiliser plusieurs versions de PHP

ISPConfig 3.2 supporte plusieurs versions de PHP en parallèle, donc vous pouvez configurer différentes versions pour chaque site.

Ajouter PHP-FPM à ISPConfig :
Dans ISPConfig, accédez à la section Sites et sélectionnez un site web existant ou créez-en un nouveau.
Sous l’onglet Options, vous verrez un champ pour choisir la version PHP. Si les versions PHP que vous avez installées apparaissent dans la liste, vous pouvez les assigner à ce site web.

Ajouter manuellement une version PHP à ISPConfig (si elle ne s’affiche pas automatiquement) : Si ISPConfig ne détecte pas automatiquement la version PHP que vous avez installée, vous devrez l’ajouter manuellement dans le fichier de configuration d’ISPConfig :

Éditez le fichier /usr/local/ispconfig/server/conf/php_fpm_pool.conf.master pour ajouter la configuration de la nouvelle version PHP-FPM.

Ensuite, vous devrez probablement redémarrer ISPConfig pour prendre en compte les modifications.

Gérer plusieurs versions de PHP sur le système

Pour gérer différentes versions de PHP sur le système, vous pouvez utiliser la commande update-alternatives. Voici comment définir la version par défaut en ligne de commande :

Lister les versions installées :

bash

update-alternatives –list php

Sélectionner une version par défaut (par exemple, PHP 7.4) :

bash

update-alternatives --set php /usr/bin/php7.4
  1. Redémarrer les services

Après avoir installé les versions de PHP et les avoir configurées dans ISPConfig, redémarrez les services PHP-FPM et Nginx/Apache pour appliquer les changements :

bash

systemctl restart php7.4-fpm
systemctl restart php8.0-fpm
systemctl restart apache2 # Si vous utilisez Apache
systemctl restart nginx # Si vous utilisez Nginx

Résumé

Ajoutez le dépôt Sury pour obtenir les anciennes versions de PHP.
Installez les versions PHP souhaitées (PHP 7.4, PHP 8.0, etc.).
Configurez ISPConfig pour gérer plusieurs versions de PHP pour chaque site web.
Utilisez update-alternatives pour gérer les versions en ligne de commande.
Redémarrez les services pour prendre en compte les nouvelles configurations.

Cela vous permettra de faire tourner plusieurs versions de PHP sur Debian 12 avec ISPConfig 3.2.

source https://www.howtoforge.com/ispconfig-php-ubuntu/