Anomalie #3874
ferméDemande #3871: upgrade php5 vers php7 sur la vm lamp
Le code du site boutique.april.org n'est plus maintenu + futur panne DSP2
0%
Description
Contexte
Actuellement, le site boutique.april.org tourne sur la vm lamp en PHP 5.
Comme PHP5 n'est plus maintenu, nous migrons tous les sites de la vm lamp vers PHP 7.
Le problème
Le site boutique.april.org fait tourner Thelia 1.5.4.3 qui s'appuie sur des fonctions mysql*_ pour l'accès à la base de données.
Les fonctions mysql*_ sont deprecated depuis PHP 5.5 et après une période de transition d'environ 3 ans, elles ont été complètement supprimées dans PHP 7.
À la place, la recommandation est d'utiliser les librairies MYSQLi ou PDO.
Pour information, dans le code source de Thelia 1.5.4.3, il y a plus de 200 appels à des fonctions mysql*_
Solutions
Solutions possibles :
1) fermer le site
Fred dit que le site est encore utile (don direct à l'April).
2) modifier manuellement le code :
Il y a 200 lignes à modifier avec des risques majeurs de changement de comportement donc bof.
Deux approchent existent :
- installer une version du module d'origine :
- https://github.com/php/pecl-database-mysql,
- n'est plus maintenu,
- un mélange qui est risque de problèmes,
- maîtrise ?
- installer un module jouant le rôle de wrapper vers mysqli_* :
- https://github.com/dshafik/php7-mysql-shim
- maîtrise ?
- version utilisée : 1.5.4.3
- dernière version : 2.3.5
Les deux versions sont très éloignées : se pose la question de la faisabilité ?
6) isoler le service sur un autre serveur
Cloner la vm lamp en vm lamp5 et n'y laisser que les services incompatible avec PHP 7.
7) autre ?