1

我有以下代码:

 mkdir($thumb_dir)

它在正确的位置创建一个目录,但是当我查看权限时

Owner : nobody
Group : nobody

我没有 shell 访问权限chown。如何防止将用户分配为nobody,以及如何删除我已经创建的文件夹,因为我没有权限。

这是一个godaddy共享服务器...

4

3 回答 3

1

您可以使用 rmdir() 删除空目录。

没有人是运行 apache 进程的用户。您不能从 php 中更改所有者,也不能在没有 root 权限的情况下使用 shell 访问(或对其进行任何更改)删除该文件夹;你只能通过 php 来操作它

于 2013-04-08T21:48:53.453 回答
1

这是因为 Web 服务器是由nobody用户运行的。因此,您在文件系统上所做的一切都将使用nobody.

您通常无法对此进行任何更改。您必须管理与您拥有的 FTP 用户不同的 Apache 用户。如果您使用 PHP 创建目录,则只能使用 PHP 删除它(rmdir()在目录为空时使用),如果您创建文件,您很可能也必须从 PHP 中删除它们。

我建议您使用 FTP 用户创建目录结构,并因此尽可能少地保留 PHP 生成的内容。

您可以使用许可授权(使用chmod)来缓解症状,但这在安全方面通常不是一个好主意。

于 2013-04-08T21:52:21.057 回答
0

用于rmdir($thumb_dir);删除它。

您不能在共享服务器上更改您的 PHP 用户。

于 2013-04-08T21:45:22.167 回答