Php5 GD (imagelayereffect) et Debian Wheezy

GD est une librarie qui permet de traiter les images en PHP, elle est très utilisé par de nombreux CMS pour travailler avec les images.

Le problème c’est que la version dispo via les paquets Debian (pour dotdeb je ne sais pas le serveur ou j’ai eu le soucis utilise les paquets Debian et Plesk) il manque une fonction, ce qui fait donc planter certaines module (dans le cas présent c’était un module joomla qui sert a afficher des images en « slider » (sur ce site : http://www.sanitaire-mobile-eco-wc.com/ en bas de page).

Via la version de PHP des paquets Debian il y avait ceci dans les logs :

[Sun Nov 09 13:13:27 2014] [warn] [client xx.xx.xx.xx] mod_fcgid: stderr: PHP Fatal error:  Call to undefined function imagelayereffect() in /var/www/………

La cause du plantage est clair la fonction « imagelayereffect() » est introuvable, c’est une fonction normalement fournis par GD (et oui le paquet php5-gd était bien installé)

En temps normal j’aurais surement mis les paquet dotdeb pour voir si ces paquets avait bien la fonction manquante, mais ici pas possible sans risquer de casser le serveur, en effet la mise à jour vers les paquet dotdeb n’avait pas l’air de plair a Plesk, plutôt que de tout casser le choix a été donc de compiler une version PHP depuis les sources.

Compiler PHP sous Debian :

La version de base de PHP utilisé sur ce serveur était une 5.4 pour ne pas casser la compatibilité j’ai utilisé la même branche (malgrès que 5.5 et 5.6 soit sortie depuis)

Une fois arrivé ici vous avez un php prêt a l’emploi a vous de le configurer pour votre serveur WEB. Dans mon cas c’était plesk qui gérrais ça (ce n’est pas un serveur a moi :)) donc pour ceux qui utilisent plesk :

Remplacez xx.xx.xx.xx par l’ip de votre serveur, et vous pouvez biensur modifier les autres paramètres a votre convenance, pensez a copier un php.ini a l’endroit ou vous l’avez définit ici.

(PS : n’utlisez pas plesk, bisou)

Vous avez aimé cet article ? Partagez-le :)

Facebook Google Plus Twitter Linkedin email

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *