[英]Execute php using exec() not working
我正在尝试以以下方式从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
但是,当我从Web应用程序执行同一命令时,它不起作用。 代码是
$test = exec("aws s3 cp s3://test/my-container/testing.txt /var/www/files-test");
print_r($test);
它不起作用,作为输出我得到了
完成了1个部分,剩余...个文件
我已经确保apache用户具有必需的特权。 这里可能缺少什么?
我解决了这个问题,我正在使用的Web服务器是nginix和Web应用程序,它们是如何在apache用户上运行的,我为nginix用户提供了权限,但没有为apache用户提供权限!
所以解决的办法是让该应用重新在nginix用户上运行。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.