Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/262.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 解压缩文件,然后更改所有权_Php_Zip_Unzip_Ownership - Fatal编程技术网

Php 解压缩文件,然后更改所有权

Php 解压缩文件,然后更改所有权,php,zip,unzip,ownership,Php,Zip,Unzip,Ownership,我的服务器上的zip文件中有许多文件。然后,我使用此脚本提取它们: $zip = new ZipArchive; if ($zip->open($file_root."/install.zip") === TRUE) { $zip->extractTo($file_root."/"); $zip->close(); } 问题是,这些文件的所有权设置为“无人”,我需要更改它们,以便我们可以通过FTP编辑文件 我做了相当多的研究,在任何地方都找不到答案,请帮助。

我的服务器上的zip文件中有许多文件。然后,我使用此脚本提取它们:

$zip = new ZipArchive;
if ($zip->open($file_root."/install.zip") === TRUE) 
{
    $zip->extractTo($file_root."/");
    $zip->close();
}
问题是,这些文件的所有权设置为“无人”,我需要更改它们,以便我们可以通过FTP编辑文件


我做了相当多的研究,在任何地方都找不到答案,请帮助。

ZIP文件不支持Unix风格的所有权信息,Apache无法创建所有权不同于它作为任何ID运行的文件。您必须在其他具有提升权限的地方使用
chown
,以更改“nobody”的所有权。这可以通过Apache使用sudo来完成,尽管您不应该以这种方式提升Apache的权限。它作为特权降低的用户运行是有原因的。

尝试使用PHP的命令。PHP可能有权限也可能没有权限这样做。或者从cpanel中将apache处理程序更改为suPHP,这将解决您的问题:有关不同处理程序的更多信息,请参见: