读取()的 Phpseclib 超时

Phpseclib timeout for read()

我正在使用 https://github.com/phpseclib/phpseclib 在 Debian 服务器上执行命令。

echo $ssh->exec("ls");

对我来说工作正常 - 但如果我尝试以下操作(如 here),则会出现超时:

$ssh->write("ls -la\n");

echo $ssh->read();

错误日志说:

[warn] mod_fcgid: read data timeout in 10 seconds 
[error] Premature end of script headers: index.php

我还尝试增加 fcgid 设置(最多 300s):

FcgidBusyTimeout 10
FcgidIOTimeout 10

不起作用...有什么帮助吗?

谢谢!

您通常需要执行 $ssh->read('[prompt]'),其中 [prompt] 是实际提示的占位符。如果您不知道提示或需要弄清楚,您可以在 $ssh->read().

之前执行 $ssh->setTimeout(3)