我有一个 CodeIgniter 应用程序在 Apache 2.2 上运行,在 Ubuntu 11.10 上运行 PHP 5.3。如果重要的话,我也在运行 PHP5-APC。因此,根据默认的 Apache2 安装,该应用程序作为 www-data:www-data
运行。
我想弄清楚要将我的文件权限设置为什么。 SO 上的许多线程似乎更喜欢 755
目录和 644
文件。有一个目录必须允许上传文件。
目前我的部署脚本做这样的事情:
- 删除旧网站
- 复制新网站
chmod -R 000
在新站点上chmod
所有目录到500
chmod
所有文件到400
chmod 700
上传目录
似乎一切正常。我可以上传文件等等。所以,我不明白为什么人们建议对文件使用 644
- 我有一个包含密码和 API key 的配置文件 - 为什么我要“其他人”有读取权限吗?
我误会了什么?
最佳答案
嗯,主要是 644
权限适用于当您有 /var/www/site1.com
时设置了不同的用户和组,然后是 www-data
,因为 644
将允许其他组和用户从该文件读取,但将允许读取和写入文件的所有者。
因为默认情况下上传文件和运行 apache 进程的用户是 www-data
那么我真的认为如果它适合你并且你没有问题,那就太好了,因为意味着更多的安全性.
更新
只是一个小的安全问题,www-data
已成为 http
服务运行其进程的非常常见的用户和组。我强烈建议每个站点/应用程序都有自己的用户和组。
关于php - Ubuntu Web 服务器上 CodeIgniter 的文件权限,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11932138/