Выполнить php с помощью exec () не работает

0

Я пытаюсь выполнить команду оболочки из командной строки php следующим образом

php -r '$test = exec("aws s3 cp s3://test/my-container/testing.txt /var/www/files-test"); echo $test;'

это работает, и в результате файлы результатов загружаются из s3 в указанное место назначения /var/www/files-test

Но когда я выполняю ту же команду из веб-приложения, она не работает. Код

$test = exec("aws s3 cp s3://test/my-container/testing.txt /var/www/files-test");
print_r($test);

это не работает, и как результат я получил

Завершено 1 часть (а) с... осталось (а) файлов

Я обеспечил пользователю Apache необходимые привилегии. Что здесь может быть отсутствует?

Теги:
amazon-s3
command-line

1 ответ

0

Я получил это решение, веб-сервер, который я использую, был nginix и веб-приложение, некоторые из которых выполнялись на пользователе apache, я дал разрешения для пользователя nginix, но не для пользователя Apache!

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

Ещё вопросы

Сообщество Overcoder
Наверх
Меню