我有一个文件夹data
,我在其中以编程方式在其中创建新文件夹。这就是为什么我希望所有这些文件夹都具有777权限 - 因为我之后也会在这些文件夹中创建文件。
我该怎么做?
我尝试chmod 777 data
,尝试了chmod -R 777 data
- 没有任何作用。数据文件夹具有777权限,但是当我在里面创建新文件夹时,这个新文件夹没有777权限。
我该如何解决这个问题?
答案 0 :(得分:1)
使用php chmod功能:
chmod($directory, 0777);
答案 1 :(得分:0)
在php级别或apache级别更改umask
http://php.net/manual/en/function.umask.php Setting the umask of the Apache user
虽然你很可能只想让另一个组读入,但在这种情况下,在文件夹上设置组粘性位,所有文件将使用与父组相同的组创建
答案 2 :(得分:0)
了解有关您的应用程序的更多信息会很有帮助,因为制作整个目录结构777通常是一个非常糟糕的主意。
以下是关于如何使事情变得更细粒度的一些建议:
'粘性'位。强>
这是在/ tmp文件夹中使用的,允许任何人和每个人创建文件,但只有所有者或root可以访问或删除创建的内容。 Here is a link that discusses it.
POSIX功能
Posix Capabilities以编程方式提升您的应用程序,为其提供root权限的子集。 Capabilities FAQ。
搜索这两个想法可能会为您提供更多的想法,让您了解如何使您的应用程序按照您想要的方式运行,但是以安全的方式。