【问题标题】:Connecting PHP to SFTP using phpseclib使用 phpseclib 将 PHP 连接到 SFTP
【发布时间】:2016-05-27 15:19:24
【问题描述】:

我需要连接到 SFTP 服务器以使用 PHP(PHP 版本:5.3.13)上传文件。

我正在尝试使用 phpseclib,但出现以下错误:

注意:在第 1375 行的 [...]\phpseclib1.0.2\Net\SSH2.php 中找不到兼容的服务器到客户端加密算法 登录失败

我使用的代码是:

    include(CfgPath .'/phpseclib1.0.2/Net/SFTP.php');
    include(CfgPath .'/phpseclib1.0.2/Crypt/Random.php');
    $port = 22;
    $sftp = new Net_SFTP($host, $port);
    if (!$sftp->login($user, $pass)) {
        exit('Login Failed');
    } else { echo 'Sucess'; }

您知道可能导致此问题的原因以及如何解决吗? 谢谢!

【问题讨论】:

  • 请提供您的源代码,您如何连接到 SFTP 服务器
  • 代码已添加,谢谢!
  • 您包含的加密与您的 SFTP 服务器不兼容。你应该选择另一个
  • 如果我不包含 Random.php 我会得到这个错误:调用未定义的函数 phpseclib_resolve_include_path()
  • 在顶部添加 set_include_path(CfgPath .'/phpseclib1.0.2/'); 并进行测试

标签: php sftp phpseclib


【解决方案1】:

在顶部添加这个 set_include_path(CfgPath .'/phpseclib1.0.2/');就像 Denis Alimov 建议的那样解决了它。谢谢!

【讨论】:

    【解决方案2】:

    我在所有行的上方添加了这一行

    set_include_path(get_include_path() . PATH_SEPARATOR . 'phpseclib1.0.2');

    PHP 文件正在寻找一个插件,可以在\xampp\php\PEAR 找到用于客户端加密的插件。

    【讨论】:

      猜你喜欢
      • 2017-05-25
      • 1970-01-01
      • 2019-08-31
      • 1970-01-01
      • 2015-03-31
      • 1970-01-01
      • 1970-01-01
      • 2015-02-06
      • 2015-09-08
      相关资源
      最近更新 更多