ssh2_scp_send第一次没问题,但第二次失败了

时间:2013-11-28 01:59:38

标签: php ssh scp

我正在使用php ssh2_scp_send将文件传输到远程计算机,但它有点奇怪,它第一次工作但是第二次调用失败并出现以下错误

//success for file transfer
if (!(ssh2_scp_send($this->conn, $lpath, $rpath, 0777))){
            throw new Exception("File transfer failed!");
        }
        ssh2_exec($this->conn, 'exit'); 

//fail this time
if (!(ssh2_scp_send($this->conn, $lpath, $rpath, 0777))){
            throw new Exception("File transfer failed!");
        }
        ssh2_exec($this->conn, 'exit')

“警告:ssh2_scp_send():在第57行的/var/www/trunk/rsetting/class/ssh.class.php中复制文件失败”

任何帮助将不胜感激〜谢谢

2 个答案:

答案 0 :(得分:0)

将php-ssh2扩展更新为0.13就可以了。

答案 1 :(得分:0)

我遇到了同样的问题但通过调用此函数解决了这个问题:

ssh2_exec($conn, 'exit');

在循环结束时。 我认为这个命令刷新缓冲区并正确写入最后一个远程文件。