无效的大小错误 - Phpseclib - SFTP连接

时间:2018-01-30 10:46:21

标签: php yii sftp phpseclib

我试图在PHP应用程序中使用SFTP连接,SFTP连接抛出无效大小错误,请任何人帮我解决这个问题。

$sftp = Yii::app()->phpseclib->createSFTP($ftp_server,8822);

if (!$sftp->login($ftp_username, $ftp_password)) {  // Login failed

}  

错误抛出:

2018/01/30 11:42:11 [error] [php] Invalid size (D:\xampp\htdocs\viahttps\protected\extensions\phpseclib\classes\Net\SSH2.php:2607)
    Stack trace:
    #0 D:\xampp\htdocs\viahttps\protected\extensions\phpseclib\classes\Net\SSH2.php(1720): Net_SFTP->_login_helper()
    #1 unknown(0): Net_SFTP->_login()
    #2 D:\xampp\htdocs\viahttps\protected\extensions\phpseclib\classes\Net\SFTP.php(405): call_user_func_array()

1 个答案:

答案 0 :(得分:2)

您正在使用的包装是0.3.6,而invalid size的问题自0.3.5以来一直存在,并且在发布后0.3.7已修复,当时人们碰到了0.3.6phpseclib升级时出错。见ISSUE

当前2.0.1位于版本phpseclib上,您可能需要查看您使用的包装器是否包含最新的phpseclib源文件。

  1. 你需要寻找其他一些做同样事情的扩展。

  2. 从此URL覆盖包装器使用的phpseclib文件,并复制protected/extensions/phpseclib/classes文件夹中的所有文件和文件夹,并将其粘贴到ngOnInit()和如果文件存在,请替换复制或覆盖。

  3.   

    注意:由于版本存在巨大差距,因此封装器可能会在某处抛出错误或异常   这可能涉及修复升级后出现的错误   源类,或者不是。