我正在尝试为我的 apache2 中的目录设置权限。我将展示一个场景,以便更容易解释和理解:
这是我的带有权限的目录列表
-> root:root drwxr-x--x www
-> gasim:www-data drwxr-x--- mydomain.com
-> drwxr-x--- gasim:www-data www
-> drwxr-x--- gasim:www-data dev
... some other folders here
我正在使用一个框架,其中需要将 www-data 作为一个组使用,因为有一些写权限等等。
我想让组 mydomain-dev 拥有目录“dev”的读/写权限。我该如何处理这个问题,同时仍然保留组 www-data。我不想将用户添加到组 www-data,因为它将有权访问其他域文件夹。也许这种方法本身就是错误的。如果是,有什么更好的方法可以解决这种情况
希望我说得有道理。
答案1
您可以为此文件夹添加额外的 vhost,并使用不同的用户运行它:
对于 Linux: http://mpm-itk.sesse.net/
对于(开放)Solaris: http://httpd.apache.org/docs/2.4/mod/mod_privileges.html
答案2
setfacl
允许您创建和修改具有任意权限列表的访问控制列表(如果您的文件系统支持它们)。例如,
setfacl -m g:mydomain-dev:rwx,d:g:mydomain-dev:rwX www/mydomain.com/dev
第一部分(逗号之前)授予 mydomain-dev 组对 dev 目录的 rwx 权限。第二部分设置在 dev 目录中创建的新文件或目录的默认权限。
有关详细信息,请参阅 setfacl(1)。