php shell_Exec не работает, пока команда работает в оболочке - PullRequest
1 голос
/ 10 января 2012

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

РЕДАКТИРОВАТЬ : добавив 2> & 1, я узнаю, что преобразование выдает ошибку: missing an image filename / a5d98168a524a331c5e06d60096debd63cbdce1f.jpg '@ error / convert.c / ConvertImageCommand / 2970 . where the full command is convert /var/www/weblog/web/uploads/poster/a5d98168a524a331c5e06d60096debd63cbdce1f.png / var / www / weblog / web / uploads / poster / a5d98168a524a331c5e06d600bf1.

1 Ответ

0 голосов
/ 10 января 2012

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

...