Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/161.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 不了解在Amazon EC2服务器上写入的权限_Php_C++_Amazon Ec2_File Permissions_User Permissions - Fatal编程技术网

Php 不了解在Amazon EC2服务器上写入的权限

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

我在AmazonEC2Linux机器上开发了一个命令行工具CLT。它是基于OpenCV的,因此我可以执行我的脚本,并能够通过imwritestd::string path,cv::Mat image在服务器上写入图像

我从控制台中准确地完成了这一点,它成功地写入了,但是当我试图从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,我仍然无法想象为什么