我的 Apache 安装默认由www-data
组内的用户启动。www-data
例如,如果我在 下有这个目录/var/www/html
。
/var/www/html/myPhpProject
此目录的所有者是whitebear
。
但是 PHP 框架在服务器上运行,有时它会使文件归 拥有www-data
,例如:log
或cache
。
然后当用户尝试更新框架时会出现一些问题whitebear
,例如无法删除日志。
最佳做法是什么?
应归myPhpProject
所有www-data
?
用户是否应该whitebear
拥有与 www-data 相同的权限?
答案1
正确的做法是:
设置 /var/www/html/myPhpProject 及其由 www-data 拥有的子内容
chown -R www-data:www-data /var/www/html/myPhpProject
- 授予您的 Vhost 正确的权限:
chmod -R 755 /var/www/html/myPhpProject
- 送给白熊能够执行管理任务,如维护日志等...须藤 或者群组权限
须藤
更改 shellwww-数据从/bin/false到/bin/sh:
chmod -s /bin/sh www-数据
更改你的 sudoers 文件白熊可以切换到用户帐户www-数据在执行管理任务时:
维苏多
然后将以上内容附加到文件:
whitebear ALL=(ALL) NOPASSWD : su - www-data
群组特权
添加www-数据作为次要群体白熊:
usermod -G www-data whitebear