Actus Circuit Libre
Posté le
⚙️ Hébergement

Migrer un stack PHP 8.3 en 8.5 après une montée de version Ubuntu

Auteur
Migrer un stack PHP 8.3 en 8.5 après une montée de version Ubuntu

Suite à une migration d'Ubuntu 25.10 vers Ubuntu 26.04 LTS, il peut être nécessaire de faire évoluer l'ensemble de la pile PHP afin d'abandonner PHP 8.4 devenu obsolète au profit de PHP 8.5.

Cette procédure a été testée avec succès sur un serveur de production.

Sauvegarder l'état actuel de l'installation PHP

Avant toute modification, il est recommandé de conserver une trace des modules et paquets actuellement installés.

php -m | tee php-modules.txt
dpkg -l | grep php | tee php-packages.txt

Ces fichiers permettront de comparer facilement l'environnement avant et après migration.

Lister les paquets PHP 8.4 installés

dpkg -l | awk '/php8.3/ {print $2}'

Générer automatiquement la liste équivalente en PHP 8.5

dpkg -l | awk '/php8.3/ {print $2}' \
| sed 's/php8.4/php8.5/g'

Exemple :

php8.3-cli      -> php8.5-cli
php8.3-fpm      -> php8.5-fpm
php8.3-mysql    -> php8.5-mysql
php8.3-curl     -> php8.5-curl

Mettre à jour les dépôts

sudo apt update

!!warn Vérifiez systématiquement la disponibilité des modules PHP 8.5 dans les dépôts avant de lancer l'installation. !!

Par exemple, le paquet php-opcache est désormais intégré à php-common.

apt search php8.5-

Installer les paquets PHP 8.5

sudo apt install $(
dpkg -l | awk '/php8.3/ {print $2}' \
| sed 's/php8.4/php8.5/g' \
| grep -v opcache
)

Vérifier les modules désormais intégrés

  • php8.5-json
  • php8.5-hash
  • php8.5-session
  • php8.5-tokenizer

Adapter la configuration NGINX

fastcgi_pass unix:/run/php/php8.5-fpm.sock;
sudo nginx -t
sudo systemctl reload nginx

Reporter les réglages du php.ini

diff /etc/php/8.3/ /etc/php/8.5/

Vérifiez notamment :

  • memory_limit
  • upload_max_filesize
  • post_max_size
  • max_execution_time
  • date.timezone
  • les paramètres OPCache
  • les éventuelles extensions spécifiques

Vérifications finales

php -v
php -m
systemctl status php8.5-fpm
systemctl status nginx

La migration de PHP 8.4 vers PHP 8.5 reste relativement simple grâce à la cohérence de nommage des paquets Debian et Ubuntu. Le principal point d'attention concerne les modules devenus intégrés ou renommés, ainsi que l'adaptation des configurations PHP-FPM et NGINX (à voir prochainement).