imagecreatefromjpeg() перестает работать после обновления сервера

imagecreatefromjpeg() перестает работать после обновления сервера

У нас есть сервер, расположенный в офисе местной компании, на котором запущены Solaris/Apache/PHP. Недавно они обновили Solaris, Apache и PHP (патчи безопасности и т. д.). К сожалению, это привело к поломке части нашего программного обеспечения, отвечающей за обработку изображений. imagecreatefromjpeg() теперь выдает следующую ошибку:

Предупреждение: imagecreatefromjpeg() [function.imagecreatefromjpeg]: '/path/to/file/filename.jpg' не является допустимым файлом JPEG в /path/to/file/Image.class.php в строке XX

Во время обновления сервера код PHP не менялся, и он был полностью функционален до обновления программного обеспечения. Я проверил файлы, передаваемые в imagecreatefromjpeg(), и они действительно действительны (они успешно открываются как в программном обеспечении для редактирования изображений, так и в моем браузере). Я проверил права доступа к каталогу, из которого открываются файлы, и у них есть разрешение на чтение. Библиотека GD включена.

Я не уверен, что еще я могу проверить. Основываясь на сценарии выше, я предполагаю, что что-то изменилось в программном обеспечении, но я не знаю, что это могло быть. PHP был версии 5.2.5, а теперь 5.2.13.

Буду признателен за любые указания относительно возможной причины этой проблемы.

решение1

Идеи..

  • php.ini был заменен, изменен или не читается. Сравните резервную копию с текущей в системе.
  • Новый пакет скомпилирован с другими опциями. Сравните новый и старый, запустивphp -i

Я понимаю, что это кажется не связанным между собой, но проверка основных параметров, таких как разрешения и доступность ресурсов (памяти), также может потенциально помочь локализовать проблему.

Есть ли еще какие-либо ошибки?

решение2

Видимо, новые библиотеки jpeg не были совместимы с чем-то еще в системе. Как только мы переключились на старые библиотеки jpeg, все снова заработало.

Связанный контент