尝试使用ssh2连接sftp服务器,但脚本可以永久运行而不会出现任何错误

时间:2011-10-05 03:06:04

标签: php sftp libssh2

我尝试使用ssh2连接到sftp服务器,但似乎php陷入了循环。 错误报告已开启。

我的代码:

$connection = ssh2_connect('my-server.url', 22);
var_dump($connection);
if (ssh2_auth_password($connection, 'username', 'password'))
{
    echo "Authentication success";
    if( ssh2_scp_recv($connection, "/throw_me_an_error/", "/somewhere/" ) )
    {
        echo "file recived";
    }
    else
    {
        echo "error";
    }
}
else 
{
    echo "Authentication failure";
}

生成此输出:

resource(7) of type (SSH2 Session)
Authentication success

但是一旦脚本尝试运行ssh2_scp_recv,它就会被卡住并永远运行而不会出现任何故障。我尝试使用现有文件和非现有文件。每次都有相同的结果 - 脚本循环运行。

即使我尝试使用ssh2_exec或其他需要在服务器上写入或读取的方法,它不仅仅是ssh2_scp_recv,它也会被卡住。

这是怎么回事?

谢谢!

1 个答案:

答案 0 :(得分:3)