shell linux 不要执行命令
shell linux don't execute commande
我有这个命令,它在 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"'
我想用外部参数解决这个问题,但它不起作用
如果 php 在安全模式下是 运行,它将不允许执行 shell_exec
,如 php 手册中所述:。
https://www.php.net/manual/en/ini.sect.safe-mode.php
您可以禁用特定文件夹的安全模式,如 Stack Overflow 问题中所述:
How to turn off php safe_mode off for a particular directory in a shared hosting environment?
最后我找到了一个很好的解决方案,谁还在搜索:
我安装了 php-ssh2 link(我使用的是 debian 8,php7)
在我的例子中,我使用 codeigniter 我按照 link 来实现这个 class
现在我可以毫无问题地在 shell 上执行任何命令
问题解决了:)
希望对某人有所帮助:)
我有这个命令,它在 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"'
我想用外部参数解决这个问题,但它不起作用
如果 php 在安全模式下是 运行,它将不允许执行 shell_exec
,如 php 手册中所述:。
https://www.php.net/manual/en/ini.sect.safe-mode.php
您可以禁用特定文件夹的安全模式,如 Stack Overflow 问题中所述:
How to turn off php safe_mode off for a particular directory in a shared hosting environment?
最后我找到了一个很好的解决方案,谁还在搜索:
我安装了 php-ssh2 link(我使用的是 debian 8,php7)
在我的例子中,我使用 codeigniter 我按照 link 来实现这个 class
现在我可以毫无问题地在 shell 上执行任何命令
问题解决了:)
希望对某人有所帮助:)