Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/unix/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用phpseclib从远程服务器下载文件_Php_Ssh_Sftp_Phpseclib - Fatal编程技术网

使用phpseclib从远程服务器下载文件

使用phpseclib从远程服务器下载文件,php,ssh,sftp,phpseclib,Php,Ssh,Sftp,Phpseclib,我使用phpseclib库中的以下代码登录到远程服务器(远程服务器使用:SFTP-SSH文件传输协议): 有人知道会发生什么吗 日志:我认为get方法适用于Net\u SFTP <?php set_include_path(get_include_path() . PATH_SEPARATOR . 'phpseclib'); include('phpseclib/Net/SFTP.php'); $sftp = new Net_SFTP('200.160.585.10'); if (!$s

我使用phpseclib库中的以下代码登录到远程服务器(远程服务器使用:SFTP-SSH文件传输协议):

有人知道会发生什么吗


日志:

我认为get方法适用于Net\u SFTP

<?php
set_include_path(get_include_path() . PATH_SEPARATOR . 'phpseclib');
include('phpseclib/Net/SFTP.php');

$sftp = new Net_SFTP('200.160.585.10');
if (!$sftp->login('username', 'password')) {
    exit('Login Failed');
}

echo $sftp->pwd() . "\r\n";
$sftp->get(
    '/sianbima/cbfundo/cbfundo_00000_20160808_171429.txt',
    '/home/comdinhe/public_html/testeArquivo.txt'
);
?>

当我尝试使用“Net_SFTP”时,我无法登录,我收到以下消息:“注意:在第3480行的/home/comdinhe/public_html/phpseclib/Net/SSH2.php中读取频道数据时出错”。当我尝试使用$ssh->exec时,什么也没发生。现在看看
echo$sftp->isAuthenticated()中返回的内容$sftp->isConnected()。“\r\n”您可以发布SSH日志吗?您可以通过执行
define('NET\u SSH2\u LOGGING',2)获得它们在顶部,然后
echo$ssh->getLog()之前的code>。下面是日志:连接需要一段时间。服务器需要20秒来获取
NET\u SSH2\u MSG\u USERAUTH\u SUCCESS
数据包,然后10秒用于发送
NET\u SSH2\u MSG\u CHANNEL\u请求
数据包,另外20秒用于发送
NET\u SSH2\u MSG\u CHANNEL\u数据
数据包。idk为什么花费这么长时间,但由于它正在尝试执行
$sftp->setTimeout(999999)
或类似操作。通过将Timeout设置为999999,错误消息消失。但是,我仍然无法复制该文件。没有显示其他错误消息。您可以发布新的日志文件吗?
Notice: Error reading channel data in /home/comdinhe/public_html/phpseclib/Net/SSH2.php on line 3480

Notice: Connection closed prematurely in /home/comdinhe/public_html/phpseclib/Net/SSH2.php on line 3500

Login Failed
<?php
set_include_path(get_include_path() . PATH_SEPARATOR . 'phpseclib');
include('phpseclib/Net/SFTP.php');

$sftp = new Net_SFTP('200.160.585.10');
if (!$sftp->login('username', 'password')) {
    exit('Login Failed');
}

echo $sftp->pwd() . "\r\n";
$sftp->get(
    '/sianbima/cbfundo/cbfundo_00000_20160808_171429.txt',
    '/home/comdinhe/public_html/testeArquivo.txt'
);
?>
$ssh->exec('rsync -avz /sianbima/cbfundo/cbfundo_00000_20160808_171429.txt /home/comdinhe/public_html');