whoami returns apache 而不是 root

whoami returns apache instead of root

我正在尝试从位置 /usr/local/administer/ 提供应用程序。有一个index.php里面的文件/usr/local/administer/index.php里面那个index.php文件就是下面的代码

echo exec('whoami');

上述代码的结果是 apache,但是根据我在 vhost 中使用 mod-ruid2

的配置,结果应该是 root

administer.conf

以下是我目前正在使用的配置。

<Directory /usr/local/administer/web>
    Options Indexes FollowSymLinks
    AllowOverride None
    Require all granted
</Directory>

<VirtualHost *:80>
    DocumentRoot /usr/local/administer/
    ServerName administer.com
    ServerAlias www.administer.com
    RMode config
    RUidGid root root
    RGroups root
</VirtualHost>

有什么建议或忠告吗?

正如 Mike 'Pomax' Kamermans 在评论中提到的那样,不要通过 PHP 与 root 用户一起 运行 任何任务。你会惹上麻烦的。如果您通过 PHP 以 root 和 运行ning whoami 登录,那么 root 将不会显示。我不确定为什么会这样。我偏好的可能解决方案是:

  1. 创建另一个用户
  2. 用新用户名替换 root
  3. 重新启动 Apache