卷曲chmod文件传输

时间:2012-10-13 06:50:14

标签: php file-upload curl

组,   我正面临卷曲文件传输的问题。我在站点A中有一个表单。表单收集一些数据和文件(文件上载)。当提交该表单时,它将数据存储在站点A中,并将数据存储在站点B(另一个服务器)中。数据将从服务器A保存到服务器B.但是使用curl的文件传输存在文件权限问题。我的文件需要有0777 chmod才能读取和传输curl。

我的工作是用

读取文件
chunk_split(base64_encode(file_get_contents($file))); 
从站点A

并将该数据传输到站点B(另一台服务器)。如果我更改了需要读取的站点A的文件中的权限,通过shell作为root,chmod 777,并进行卷曲传输,那么它将完全存储在服务器B中。但是当我通过代码进行文件传输时我无法使用chmod函数,因为该文件在用户中存储为“apache”而不是“root”。

详细说明:

我有一个joomla网站,里面有一个chronoform的查询表格。我在chrnoform中有一些文本和一个文件上传。当用户要求报价时,这些数据需要存储在sugerCRM(sugarCRM lead module,web to lead form,campaign)中。 Joomla站点位于服务器A中,sugarCRM位于服务器B中。上载的文件将存储在sugarCRM的notes表(mysql)中。如果我手动将文件更改为chmode 777,所有工作都有效。但我希望当有人在chronoform中上传文件时会发生这种情况。我尝试通过PHP代码chmod但它不起作用,因为创建该文件的程序将“apache”作为用户而不是“root”用户。任何解决方法?我只需要知道是否通过程序将文件权限从0644更改为0777。有帮助吗?如果有人想查看代码,那么我可以将代码粘贴并在此处发布。

1 个答案:

答案 0 :(得分:0)

更改权限的文件需要具有与手动更改权限的帐户相同的权限。你可以给apache或www-data persmissions来改变某些文件/目录(或sudo),但我不推荐它。