我尝试在远程主机上打开文件并读取它,但我得到的返回值为1。也许有人能发现我的bug。
public function get()
{
return $stream = file_get_contents("ssh2.sftp".$this->connection."/home/user/logfile.txt");
}
$this->连接是:
public function __construct($host , $port , $user , $pass )
{
if(!$this->connection = ssh2_connect($host, $port)) return -1;
if(ssh2_auth_password( $this->connection, $user, $pass )) return -1;
return 1;
}
连接也可以,可以发送其他命令,如tar…
我可以推荐phpseclib,一个纯PHP SFTP实现吗?它更容易使用并且得到更好的支持。下面是你如何使用它的方法:
<?php
$sftp = new Net_SFTP($host, $port);
if (!$sftp->login($user, $pass)) {
exit('bad login');
}
echo $sftp->get('/home/user/logfile.txt');
?>
如果你在使用phpseclib时遇到问题,你可以创建日志文件并将它们发布到官方支持论坛上,并在那里获得顶级的支持。