创建目录PHP时,用户是“nobody”

时间:2013-04-08 21:34:32

标签: php apache

我有以下代码:

 mkdir($thumb_dir)

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

Owner : nobody
Group : nobody

我没有chown的shell访问权限。如何防止将用户指定为无人,以及如何删除我已经制作的文件夹,因为我没有权限。

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

3 个答案:

答案 0 :(得分:1)

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

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

答案 1 :(得分:1)

这是因为Web服务器由nobody用户运行。因此,您在文件系统上执行的所有操作都将使用nobody

的权限完成

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

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

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

答案 2 :(得分:0)

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

您无法在共享服务器上更改PHP用户。