imagecreatefromjpeg() para de funcionar após atualização do servidor

imagecreatefromjpeg() para de funcionar após atualização do servidor

Temos um servidor localizado no local de negócios de uma empresa local executando Solaris/Apache/PHP. Recentemente, eles fizeram uma atualização para Solaris, Apache e PHP (patches de atualização de segurança, etc.). Infelizmente, isso causou a falha da parte de manipulação de imagens do nosso software. imagecreatefromjpeg() agora está gerando o seguinte erro:

Aviso: imagecreatefromjpeg() [function.imagecreatefromjpeg]: '/path/to/file/filename.jpg' não é um arquivo JPEG válido em /path/to/file/Image.class.php na linha XX

Nenhum código PHP foi alterado durante a atualização do servidor e ele estava totalmente funcional antes das atualizações do software. Verifiquei os arquivos que estão sendo passados ​​para imagecreatefromjpeg() e eles são realmente válidos (eles abrem com sucesso no software de edição de imagens e no meu navegador). Verifiquei as permissões do diretório onde os arquivos estão sendo abertos e eles têm permissão de leitura. A biblioteca GD está habilitada.

Não tenho certeza do que mais posso verificar. Com base no cenário acima, suponho que algo mudou no software, mas não sei o que poderia ser. PHP era a versão 5.2.5 e agora é 5.2.13.

Agradeço qualquer orientação sobre o que poderia ser a causa desse problema.

Responder1

Ideias..

  • php.ini foi substituído, alterado ou não está sendo lido. Compare o backup com o atual no sistema.
  • O novo pacote é compilado com diferentes opções. Compare o novo e o antigo executandophp -i

Eu sei que não parece relacionado, mas verificar fundamentos como permissões e disponibilidade de recursos (memória) também pode ajudar a isolar o problema.

Existem outros erros?

Responder2

Aparentemente, as bibliotecas jpeg mais recentes não eram compatíveis com outras coisas no sistema. Assim que voltamos para as antigas bibliotecas JPEG, ele começou a funcionar novamente.

informação relacionada