exec() PHP 在浏览器中不起作用,但在终端中工作正常


exec() PHP not working in browser but working ok in terminal

我正在尝试在我的php文件中执行以下操作:

exec("java -jar /Applications/XAMPP/htdocs/Web/SimpleEncryption.jar hola", $output);

我得到数组(0) { }

如果我执行php文件.php在终端中它可以工作。

如果我跑

exec("whoami", $result);

我在浏览器中得到数组([0] =>守护进程),在终端中得到数组([0] => dao)。 dao=我的用户。

我不知道我必须授予什么权限以及如何授予它们。

谢谢

可能是 php 服务器进程的用户名不是您的用户名。当您从终端运行它时,您将以 dao 身份登录,但您的网络服务器提供的 php 进程使用不同的用户名。 如果您使用的是 php-fpm,则用户名在 conf 文件中指定。