无法从php执行ssh

时间:2010-10-01 22:57:21

标签: php apache ssh sudo

我似乎无法从execsystempassthru等任何PHP函数执行ssh命令。

我甚至尝试了/bin/ssh,但没有显示输出

有什么想法吗?我可以通过执行“su - www-data”然后尝试ssh工作来确认,这意味着apache用户可以访问ssh ..

由于

更新:抱歉一切,似乎ssh正在运行正常,这是远程命令没有运行。例如:

$remote_command = "/usr/bin/ssh -i /home/www-data/id_rsa testuser@10.0.1.10 'echo hi > /home/testuser/test'";
passthru($remote_command);

我在远程服务器上看到流量,但是没有创建新文件“test”..

1 个答案:

答案 0 :(得分:1)

请注意,php exec函数仅捕获标准输出stdout,而不是错误输出stderr。执行命令时,您应该将stderr重定向到stdout,即passthru("ssh ... 2>&1");