我正在尝试以下列方式从php命令行执行shell命令
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用户具有所需的权限。这里可以缺少什么?
答案 0 :(得分:0)
我解决了这个问题,我正在使用的网络服务器是nginix和web应用程序,一些如何在apache用户上运行,我给了nginix用户的权限,但没有给apache用户!
所以修复是让应用程序在nginix用户上运行。