拥有与 www-data 具有相同权限的用户

having a user with the same permissions as www-data

我有一个虚拟网络服务器 运行 linux 并且我有一个名为“user”的用户。这也是我使用 sshfs 挂载网络服务器目录时使用的用户。遗憾的是,这个用户不能为我正在工作的网站写任何文件,只有用户 www-data 可以这样做。如果我使用: chown -R user:user ./ 更改所有者,我可以将数据更改为“用户”,但现在该网站无法再在网络浏览器中打开。所以我必须在完成文件编辑后更改文件的所有者,这非常乏味。

我已将用户“user”添加到 www-data 组,但这并没有改变任何内容。

如何设置所有内容,使用户“user”可以编辑文件以及 www-data?

您需要更改文件的权限,以便允许同一组的成员写入。您可以使用 chmod g+w -R ./ 命令执行此操作,这适用于现有文件。

但是,您会注意到,新创建的文件将在所有者设置为 user:user 的情况下创建,这仍然会拒绝对 www-data 的访问。您可以通过像这样设置默认 ACL 来更改此行为:setfacl -R -d -m g:www-data:rw ./

setfacl 选项的意思是:

  • -R递归
  • -d 操作适用于默认 ACL
  • -m修改ACL
  • g:www-data:rw 组默认设置为www-data 组权限读写