Eu usei um contêiner docker com o servidor php
incorporado para desenvolvimento. Agora estamos criando um ambiente de teste e queremos usar php-fpm
. Tudo correu bem e tudo funciona como esperado, com uma diferença - ImageMagick.
O mesmo comando, executado em php
embedded server e php-fpm
, produz resultados diferentes:
Ao converter imagens usando o servidor incorporado, ele funciona muito bem, mas ao usar php-fpm
, recebo:
convert: no decode delegate for this image format 'PNG' @ error/constitute.c/ReadImage/504.
convert: no images defined '-' @ error/convert.c/ConvertImageCommand/3258.
É realmente frustrante porque é o mesmo container, a mesma instalação de php
, o mesmo php.ini.
EDITAR:
Comando usado:
shell_exec("/usr/bin/convert -thumbnail "50x50+0+0" /app/assets/uploads/super_e55d4fbf182b582f5bb1_bottle05.png -");
EDIT2:
Eu tentei executar algo "simples", e aqui está a saída:
shell_exec("/usr/bin/identify");
Version: ImageMagick 6.9.7-4 Q16 x86_64 20170114 http://www.imagemagick.org[...]
shell_exec("ls /app/assets/uploads/super_e55d4fbf182b582f5bb1_bottle05.png");
/app/assets/uploads/super_e55d4fbf182b582f5bb1_bottle05.png
shell_exec("/usr/bin/identify /app/assets/uploads/super_e55d4fbf182b582f5bb1_bottle05.png");
null
EDIT3:
shell_exec("/usr/bin/identify /app/assets/uploads/super_e55d4fbf182b582f5bb1_bottle05.png 2>&1");
identify-im6.q16: no decode delegate for this image format 'PNG' @ error/constitute.c/ReadImage/504.
enquanto executado diretamente no shell:
/usr/bin/identify /app/assets/uploads/super_e55d4fbf182b582f5bb1_bottle05.png 2>&1
/app/assets/uploads/super_e55d4fbf182b582f5bb1_bottle05.png PNG 520x1020 520x1020+0+0 8-bit sRGB 319KB 0.010u 0:00.009