Imagick jpeg: l'option de taille ne fonctionne pas sur un serveur mais pas sur l'autre


1

Pas sûr si cela devrait être posté ici ou sur stackoverflow alors figuré que c'était le pari plus sûr. J'utilise Imagick pour redimensionner des jpeg. Cela fait partie du code

$prehintSize = (int) $requestedWidth > $requestedHeight ? $requestedWidth : $requestedHeight;
$imgckObj = new Imagick();
$imgckObj->setOption('jpeg:size', $prehintSize . 'x' . $prehintSize);
$imgckObj->readImage($sourceFilePath);

Fondamentalement, $imgckObj->setOption('jpeg:size', $prehintSize . 'x' . $prehintSize);c'est utilisé pour indiquer à libjpeg combien de fichiers doivent être chargés dans la RAM, ce qui donne un gain de performances proche de 10x. Cela fonctionne très bien sur mes serveurs sous Ubuntu avec PHP sous Apache. Sur mon autre serveur exécutant CentOS avec PHP exécutant suPHP alors que le code fonctionne toujours, il est évidemment ignoré car il ne s'accélère pas du tout. Je me demande s'il s'agit d'une limitation que je ne peux pas contourner en raison de suPHP ou si j'ai simplement besoin de configurer autre chose.

Je penserais qu'il l'aurait déjà, mais au cas où cela pourrait faire partie du problème, j'utilise ImageMagick 6.5.4-7 sur des centos, car c'est la dernière chose à tirer. Pour Ubuntu, j'utilise ImageMagick 6.6.9-7 Merci de votre aide.


On dirait que la version de Imagemagick est le problème. L' examen du journal des modifications imagemagick.org/script/changelog.php 6.5.6-2 a ajouté le paramètre requis. Je mets à jour Imagemagick en compilant à partir des sources en utilisant les instructions suivantes: equella.custhelp.com/app/answers/detail/a_id/10272 Il s’est installé dans / usr / bin / local et vous devrez peut-être créer un lien symbolique vers / usr / bin pour le faire fonctionner.
Brian F Leighty

Bravo pour trouver une solution! Pourriez-vous l'afficher comme une réponse et l'accepter?
Terdon

Ouais, ça ne me laisserait pas, car pas assez de temps avait passé. Je le ferai maintenant.
Brian F Leighty

Réponses:


1

On dirait que la version de Imagemagick est le problème. L'examen du journal des modifications imagemagick.org/script/changelog.php 6.5.6-2 a ajouté le paramètre requis.

J'ai mis à jour Imagemagick en compilant à partir de la source en utilisant les instructions suivantes: http://equella.custhelp.com/app/answers/detail/a_id/10272 Il s’est installé dans / usr / bin / local et vous devrez peut-être créer un lien symbolique vers / usr / bin pour le faire fonctionner. Maintenant, j'ai de nouveau ma performance boost :)

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.