如何让Apache以当前用户身份运行

Jie*_*eng 50 permissions apache2

我觉得对于开发机来说,以当前用户身份运行Apache是​​否更方便,以简化权限问题?我怎么做?我认为它的 suexec 但我如何在 Ubuntu+Apache 中配置它?

Eri*_*ric 66

以 root 身份编辑以下文件:/etc/apache2/envvars

使用命令:

sudo nano /etc/apache2/envvars
Run Code Online (Sandbox Code Playgroud)

如果只有一个用户,请将用户和组更改为您自己,这样您就再也不会遇到权限问题了。

IE,如果您仅以用户“big_dog”的身份登录并运行服务器:

export APACHE_RUN_USER=big_dog
export APACHE_RUN_GROUP=big_dog
Run Code Online (Sandbox Code Playgroud)

哎呀,就此而言,您可以将该用户更改为当前用户,我敢肯定。然后,安装 user_dir 你所有的网站,只有你可以完全控制(除非你修改它)。

重新启动服务器(如果不确定,只需重新启动或使用 goole)就可以了。

  • 这很有魅力!谢谢你。我唯一要补充的是:`sudo chown big_dog.big_dog /var/lock/apache2` (3认同)
  • 也可能你需要`sudo chown big_dog.big_dog -R /var/log/apache2` (3认同)

Rin*_*ind 29

我自己会将用户添加到www-data组中...

sudo adduser {username} www-data
Run Code Online (Sandbox Code Playgroud)

简单有效。没有弄乱配置文件或权限。

  • 我一直这样做,但这不会解决一些权限被拒绝的问题,因为组权限与用户对所有文件的权限不同。 (8认同)
  • 如果 CHMOD 不允许组写入,这将无法解决。 (2认同)
  • 这不能解决您创建文件并且 www-data 无法删除/编辑它们的问题,因为您的主要组不是 www-data (2认同)