我正在使用 Ubuntu 18.04 在桌面环境中工作。
我的 Apache 2 服务器设置在文件夹中有多个网站/var/www/
(每个网站都位于其自己的文件夹中)
让自己成为所有者并将 www-data 分配为组: sudo chown $USER:www-data -R /var/www
固定权限: sudo chmod -R 774 /var/www
一切正常,直到我添加一个文件或添加一个新网站 (git pull)。www-data 组不会附带新文件。禁止 Apache 运行。
这是通过重新执行来修复的sudo chmod -R 774 /var/www
,但这感觉不像是修复。
我做错了什么?
编辑:它似乎git pull
不尊重我之前设置的权限。即使父文件夹的权限设置正确。
您需要为所有文件夹设置 setgid 位:
chown $USER:www-data -R /var/www
chmod -R g+s /var/www
然后在“setgid 文件夹”中创建的每个新文件都会有一组父文件夹。创建文件的用户必须在 www-data 组中
WWW 文件权限可以限制为您的用户(读写)和 www-data 组(只读),而其他人没有任何权限:
chmod -R u=rwX,g=rs,o= /var/www
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句