Php 不了解在Amazon EC2服务器上写入的权限
我在AmazonEC2Linux机器上开发了一个命令行工具CLT。它是基于OpenCV的,因此我可以执行我的脚本,并能够通过imwritestd::string path,cv::Mat image在服务器上写入图像Php 不了解在Amazon EC2服务器上写入的权限,php,c++,amazon-ec2,file-permissions,user-permissions,Php,C++,Amazon Ec2,File Permissions,User Permissions,我在AmazonEC2Linux机器上开发了一个命令行工具CLT。它是基于OpenCV的,因此我可以执行我的脚本,并能够通过imwritestd::string path,cv::Mat image在服务器上写入图像 我从控制台中准确地完成了这一点,它成功地写入了,但是当我试图从PHP脚本Apache用户调用它时,它能够在PHP上获取输入文件,将它移到一个特定文件夹,但是当我通过Excel $ExcQueq、$Outlook、$Curror执行命令行工具时,我的C++ CLT不写任何图像。 PH
我从控制台中准确地完成了这一点,它成功地写入了,但是当我试图从PHP脚本Apache用户调用它时,它能够在PHP上获取输入文件,将它移到一个特定文件夹,但是当我通过Excel $ExcQueq、$Outlook、$Curror执行命令行工具时,我的C++ CLT不写任何图像。 PHP代码是:
move_uploaded_file($_FILES["file"]["tmp_name"],
"/var/www/html/public/saved/" . $_FILES["file"]["name"]);
$path = "/var/www/html/public/saved/" . $_FILES["file"]["name"];
$dest = "/var/www/html/public/saved/DEST_" . $_FILES["file"]["name"];
$execQuery = sprintf("/usr/local/bin/binary_test -source \"%s\" -dest \"%s\"", $path, $dest);
exec($execQuery, $output, $return); // this should execute my binary which writes an image
并且保存的文件夹具有as user:ec2 user和www as group。我试图将其更改为apache,但没有得到任何结果
有人对此有线索吗
事先非常感谢。问候
编辑:
$return代码是6
编辑2:
如果在exec命令之前应用sudo,则返回代码为1。否则是6
经过小时和小时调试,我在C++行上得到了错误,我在这里调用函数:
CascadeClassifier::detectMultiScale,我仍然无法想象为什么