我创建了一个应用程序,它使用 ZipArchive 类(php 中的标准)中的方法 extractTo() ,并在 Windows 7 上的本地主机 apache 服务器上对其进行了测试,没有任何问题。但当我在一些 UNIX 生产服务器上尝试过之后,它只是抛出
Warning: ZipArchive::extractTo(): Permission denied in /path/to/file.php on line 27
我什至为应用程序使用的每个文件夹设置了 0777 chmod,但这没有帮助。
你知道出了什么问题吗?
对于 linux / macosx 用户,更改
$zip->extractTo('/Directory/');
至
$zip->extractTo('Directory/');
也可以帮忙。
检查运行 Apache 的用户(有时是用户“www-data”)是否有权访问相关 zip 文件。
还可以尝试将文件的所有者更改为运行 Apache 的用户(检查该用户的
top
)。
这适用于 ubuntu 服务器
“sudo chown --递归 www-data:www-data *”