首页 > 解决方案 > 将正确的用户/组设置为 Apache 服务器/项目

问题描述

我无法在 Web 服务器 Ubuntu 20.04、Nginx、Apache 上正确设置 Web 项目权限。这是我的第一次虚拟主机管理,如果我没有正确使用这些术语,请原谅我。

我有一个sudo用户'foo'。我通过它管理服务器。我使用另一个,而不是 sudo 用户 'boo' 来管理 Web 项目(nodjs,apache,....)

网络项目位于:/home/boo/apps/blog, /home/boo/apps/forum, ...

我尝试了有关设置和重新调整各个项目的不同教程sudo chown -R www-data:www-data blog,但对我来说看起来并不好。

在我的旧主机上,网络项目归“boo”所有

drwxr-xr-x 7 boo boo 4096 Sep 16 05:59 blog

这是否意味着 apache 服务器设置为使用“boo”?如何将其设置为那样工作。在我看来这是最好的情况,因为 'boo' 可以在没有sudo.

我试图设置它但/etc/apache2/envvars没有成功。

export APACHE_RUN_USER=boo
export APACHE_RUN_GROUP=boo

我试图将 'boo' 添加到 'www-data' 组:sudo usermod -a -G www-data boo。这是对的吗?

标签: permissionsapache2

解决方案


我们可以在The Apache 2 ITK MPM http://mpm-itk.sesse.net/的帮助下为每个虚拟主机设置单独的组/用户

<VirtualHost 127.0.0.1:666>
        ServerName example.com

        <IfModule mpm_itk_module>
                AssignUserId boo boo
        </IfModule>
</VirtualHost>

推荐阅读