我一直在试图使用php中的shell_exec()函数执行脚本:
我编写了以下代码行:
在浏览器上执行此操作时,我收到以下错误信息:
此外,当我执行以下操作时:
我得到的输出如下:
任何帮助克服这个问题都将非常有帮助。
我编写了以下代码行:
$command = "bash /path/to/my/script/ funciton_name() 2>&1";
echo shell_exec($command);
在这个Shell脚本中,我正在执行以下操作:
sudo rsync -avvc /source/path /destination/path
在浏览器上执行此操作时,我收到以下错误信息:
sudo: no tty present and no askpass program specified
当我在我的服务器上执行相同的shell脚本时,它可以正常执行。
当我查看这个论坛上发布的类似问题时,我意识到我必须在我的服务器上添加NOPASSWD行,我发现已经以以下格式添加:
User_Alias NOBODY=nobody,apache
NOBODY ALL=(ALL) NOPASSWD : /path/to/my/script
此外,当我执行以下操作时:
echo shell_exec("whois");
我得到的输出如下:
apache
任何帮助克服这个问题都将非常有帮助。