suPHP 的重要性是什么?

what is the importance of suPHP?

这可能是一个真正的菜鸟问题,但我找不到答案。

当使用常规 PHP 时,如果我们执行 echo `whoami`; 它输出 apache。但是当启用 suPHP 时,上面的代码将输出 user's name。我想知道这如何有助于提高网站的安全性。

对于共享主机,一台服务器上有多个站点。

运行 作为 Apache / httpd 你有许多其他人 运行 作为同一用户。因此用户 1 可以查看甚至修改用户 2 的文件。

当 运行 作为个人用户时,您可以更好地控制谁可以访问每个文件。

更重要的文件是配置文件,例如数据库连接。如果没有分离,该主机上的任何用户都可以访问 apache 可读的任何配置文件所有者。

即使在非共享环境中 运行 作为用户也会提供更细粒度的权限。这对于为用户提供所需的访问权限很有用,如果有人能够通过 Web 服务器执行命令,则可以限制损害。