php shell_Exec не работает, пока команда работает в оболочке

Мне нужно использовать команду imagemagick convert из php. Поэтому я использую shell_exec но вывод этого является пустой строкой. Я знаю, что команда convert не печатает anyting в STDOUT, но желаемый вывод convert также не достигается. также exec не работает. эти команды выполняются отлично от оболочки или из командной строки php. Что может быть проблемой?

EDIT : добавив 2> & 1, я узнаю, что конвертер бросает ошибку: missing an image filename /a5d98168a524a331c5e06d60096debd63cbdce1f.jpg '@ error / convert.c / ConvertImageCommand / 2970. where the full command is конвертирует /var/www/weblog/web/uploads/poster/a5d98168a524a331c5e06d60096debd63cbdce1f.png / var / www / weblog / web / uploads / poster / a5d98168a524a331c5e06d60096debd63cbdce1f.jpg`.

Пользователь, который Apache использует в linux, называется www-data, вы должны убедиться, что у этого пользователя есть разрешение на работу с файлами и командами, которые вы используете. Вы можете использовать chmod для изменения прав доступа к файлам или chown, чтобы изменить владельцев файлов / dir на www-data.