为不同的虚拟主机以不同的用户身份运行 Apache

Ric*_*ler 0 linux permissions virtualhost apache-2.2

我有一台运行多个网站的服务器,每个网站都配置为一个单独的虚拟主机。一些受信任的用户需要对 Web 服务器进行 shell 访问,但为了防止滥用和意外错误配置,每个用户只被允许对他们自己的网站目录进行写访问。当前实现的方式是每个网站都将所有权设置为username:apache“username”是允许对目录进行写访问的人的用户名,“apache”是实际 Apache 用户所在的组名属于。

这种配置在一定程度上有效。用户可以毫无问题地编辑现有文件和创建新文件。但是,由于大多数站点是由各种CMS软件驱动的,因此CMS(即网络服务器/Apache)写入目录的所有内容都被写入为apache:apache,并且用户不会获得对新文件的写入权限。

我的问题:

  1. 设置这样一种配置的最佳方法是什么,即允许多个用户只对他们自己的目录进行写访问,并且用户也可以写由网络服务器写入的文件?
  2. 是否可以指示 Apache 以另一个用户和组的身份为某些虚拟主机写入数据?

Jan*_*nen 5

看看apache2-mpm-itk和/或suPHP

  • 2018 年致电并希望对此进行更新 :) .. 提示:对于 php-fpm,请查看 /etc/php/*/fpm/pool.d/ (2认同)