2014-11-11 2 views
0

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

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 часть (ы) с ... файл (ы) остающегося

Я обеспечил апачский пользователя потребовал привилегий. Что здесь может быть отсутствует?

ответ

0

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

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

Смежные вопросы