gpt4 book ai didi

php - ZipArchive php 类以 root 身份提取文件。为什么?

转载 作者:搜寻专家 更新时间:2023-10-31 20:55:16 24 4
gpt4 key购买 nike

我有一个 php 脚本:

$extract_dir = "./";
$extract_file = "extractME.zip";

$zip = new ZipArchive;
$res = $zip->open($extract_file);
if ($res === TRUE) {
$zip->extractTo($extract_dir);
$zip->close();
echo "ok";
} else {
echo "failed";
}

但是当我执行这个脚本时,通过 http://www.mywebsite.com/extract.php

FTP 上的所有文件都以 OWNER 'root' 显示,但不是用户 ex 。 "new",因为它应该是。因此用户无法编辑/重命名/删除这些文件。

是否有可能以任何方式解决这个问题(我拥有服务器),文件将以“USERNAME”OWNERSHIP 提取?

最佳答案

ozzwanted,出于某种原因,您的网络服务器 (apache) 以 root 身份运行,因此它生成的任何文件都将以 root 身份生成。绝不应该是这种情况。 apache 通常作为“www-data”或“httpd”,或者“nobody”或“god”运行,具体取决于 linux 发行版。

我建议您从系统管理员的角度来研究这个问题,并在您最终被利用之前请人为您解决。 (假设这是一个实时服务器)

您可以使用 www.php.net/chown 函数,或者您可以在命令行上运行“chown”命令,或者使用 system() 或 exec() 函数之类的 PHP 执行此操作。

祝你好运。

关于php - ZipArchive php 类以 root 身份提取文件。为什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3370717/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com