Shell Linux不执行命令

我有此命令,它在shell上运行良好。 我想用php运行它,但是不起作用 我错过了什么:

已编辑:

$arg="arg1"; $arg2= "arg2";

echo shell_exec("sshpass -p ".escapeshellarg($arg)." ssh -t root@00.00.00.00 'asterisk -rx ".escapeshellarg($arg2)."'");

此更改后,输出无错误,但仍未执行命令

已编辑: 原始的突击队是这样的:

sshpass -p 'arg1' ssh -t root@00.00.00.00 'asterisk -rx "arg2"'

我想用外部参数解决问题,但这不起作用

xceo123 回答:Shell Linux不执行命令

如果php在安全模式下运行,则不允许执行shell_exec,如php手册中所述: https://www.php.net/manual/en/ini.sect.safe-mode.php

您可以禁用特定文件夹的安全模式,如“堆栈溢出”问题中所述:

How to turn off php safe_mode off for a particular directory in a shared hosting environment?

,

最后,我为仍在搜索的人找到了一个不错的解决方案:

我通过此链接安装了php-ssh2(我使用debian 8,php7)

blog.programster.org

在我的情况下,我使用codeigniter并遵循链接以实现此类

bitbucket.org

现在我可以在shell上执行任何命令而不会出现问题了

问题解决了:)

希望有人帮忙:)

本文链接:https://www.f2er.com/3106175.html

大家都在问