无法在 Plesk 服务器(Linux)中以非 root 用户身份执行 PHP 二进制文件

无法在 Plesk 服务器(Linux)中以非 root 用户身份执行 PHP 二进制文件

我在 Debian 9.13 服务器上运行 Plesk 18.0.44。它有多个订阅,因此这些虚拟主机有不同的用户。我总是能够/opt/plesk/php/7.4/bin/php -v以虚拟主机用户身份运行(或者更确切地说,运行托管在那里的应用程序的一些 PHP 命令,但 php -v 足以说明目的)。最近,它停止工作并显示以下错误消息:

-su: /opt/plesk/php/7.4/bin/php: Permission denied

我不明白这一点,因为我不记得更改过任何有关权限的内容或运行过 Plesk 更新或类似操作。我尝试将 vhosts 用户组(laravelapp组中的用户psacln)添加到 php 可执行文件的权限中,因此它们看起来像这样:

ls /opt/plesk/php/7.4/bin/php -al
-rwxrwxrwx 1 root psacln 5629184 Jun 16  2022 /opt/plesk/php/7.4/bin/php

我甚至尝试将权限设置为 777,但还是无法让它再次工作。当以 root 用户身份运行时,它完全正常工作 - 正如预期的那样。

造成该问题的可能原因是什么?我该如何进一步排除故障?

答案1

正如@Ginnungagap 指出的那样,我忽略了 PHP 可执行文件的父文件夹的权限。

chmod 755 /opt/plesk/php

它确实有效。我仍然不确定为什么会发生这种情况。

相关内容