【问题标题】:Does apache for linux process http requests as a different user?linux 的 apache 是否以不同的用户身份处理 http 请求?
【发布时间】:2014-01-05 08:27:31
【问题描述】:

我已经做了大约 6 个月的 Web 开发,只是为了好玩,所以我从来没有真正的理由来保证安全。现在我想改变它,但我很难理解 apache 文件权限。我创建了服务器,通常只是以 777 权限运行var/www,因为我需要过得去并且没有值得窃取的信息。我研究了用户权限,现在在配置一些东西后遇到了问题。我将 apache 用户“nobody”添加到我创建的名为 webserver 的组中,我在该组中也有一个 ftp 用户。我设置了var/www 权限,以便“我”和webserver 组对文件夹和随附文件具有完全权限,而其他用户没有权限(无法读取)。当我尝试在“本地主机”上查看我的示例网站时,我收到来自 apache 的权限被拒绝消息,但 apache 拥有该文件的完全所有权,所以它为什么不能处理该文件,向请求它的计算机发送适当的响应,并完成交易? Apache 是否以不同的用户身份处理 http 请求?我很困惑。

【问题讨论】:

  • 您确认您的 apache 进程以正确的UserGroup 运行了吗?可以在httpd.conf中配置。

标签: linux apache permissions lamp


【解决方案1】:

通常在 Ubuntu 上,apache 使用用户 www-data 运行。

您也可以通过在envvars 文件中编辑APACHE_RUN_USERAPACHE_RUN_GROUP 来拉皮条。

【讨论】:

  • 谢谢,这很有帮助,为什么人们声称它在“nobody”下运行?它的文件夹等是否属于“nobody”但它在 www-data 下运行?
  • 谢谢,那么php是由apache运行还是以自己的名义运行?我还需要配置这些权限。
  • 我会说它将由 apache 运行(所以在www-data 下)。我知道这适用于 cgi 脚本,但我不完全确定 php。
  • 好的,我已经进行了相应的配置。我去看看是不是都亮了。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2011-04-24
  • 2014-03-25
  • 2018-05-31
  • 1970-01-01
  • 1970-01-01
  • 2018-03-14
  • 1970-01-01
相关资源
最近更新 更多