任何人都可以在ssh2_exec()函数调用中解释$ pty参数

时间:2012-04-20 18:55:23

标签: php ssh

我一直在使用ssh2_exec一段时间来为我们的工作场所构建一个管理面板和部署系统,到目前为止,当我尝试在另一台服务器而不是本地服务器上使用它时非常成功。

我一直得到“stdin:不是tty”,我一直在网上寻找这条消息。我明白问题是ssh2_exec本身不是一个交叉终端,而我正在连接的服务器上的东西可能正在尝试检查某种输入方法...至少那就是我似乎理解的东西。 / p>

我已经搜索谷歌1小时30分试图找到相对于php的ssh2实现的帖子,这对我现在的用法很好但是从来没有能够找到如何修复这个虽然我想我可能有一个想法。

ssh2_exec()有一个$ pty参数(第3个),但文档并没有告诉我们它的作用。是否有人熟悉它并知道如何使用此参数,如果它可能实际上解决了我可能遇到的问题?

1 个答案:

答案 0 :(得分:2)

你已经找到了答案。将$ pty参数设置为true应该与将'-t'选项传递给ssh命令相同:它告诉客户端打开一个伪终端(又名“pty”,它来了来自“伪tty”;“tty”来自“电传”,并假装是互动的。