php apache权限 - 最佳实践

时间:2012-05-09 01:16:18

标签: php linux apache codeigniter

我有一个使用php创建文件夹的codeigniter应用程序。通过php创建的任何文件夹的所有者是'apache',但是如果我想通过ftp上传文件夹,则所有者是我的ftp用户名。

我有一个问题是php(apache)无法修改由于权限而通过ftp上传的文件夹中的文件。与此同时,我已将我的ftpuser添加到apache组,并将apache添加到ftpuser组,但是想知道是否有更好的方法?

2 个答案:

答案 0 :(得分:3)

一般来说,我所做的是chgrp任何目录php将写入组apache运行为(我的服务器上的www,可能是你的apache),chmod g + s。这将使该目录中创建的任何文件也归Web服务器组所有。如果默认的umask允许组写,这将解决您的问题。

答案 1 :(得分:1)

最佳做法是仅允许用户读取/写入应该使用的文件。

在我的网络应用程序中,我有一个网站的数据目录,我存储了应用程序中所有动态生成的数据。

然后我只允许应用程序写入该目录,而不是其他任何内容。