2011-07-11 70 views
2

我已經安裝在我的CentOS WHM /的cPanel服務器啓用了SSH2,這裏是從PHP信息:PHP 5 SSH2功能

SSH2 SSH2支持啓用 擴展版本0.11.2 libssh2版本0.18 旗幟SSH- 2.0- libssh2_0.18 遠程轉發啓用 基於主機身份驗證啓用 輪詢支持啓用 公鑰子系統啓用

註冊PHP流HTTPS,FTPS,compress.zlib,PHP,文件,水珠,數據,HTTP,FTP,SSH2。 shell,ssh2.exec,ss h2.tunnel,ssh2.scp,ssh2.sftp

但是,任何時候我嘗試使用SSH2 PHP函數接收文件,我得到這個:

警告:ssh2_scp_recv(/家/ XXXX) [function.ssh2-SCP-的recv]:未能 打開流:是/ pathtoFile目錄第16行

下面的代碼:

if($connection = ssh2_connect('www.server.com', 22)){ 
    echo("connected"); 
}else{ 
    echo("NOT connected"); 
} 

if(ssh2_auth_password($connection, 'username', 'mypassword')){ 
    echo("password ok"); 
}else{ 
    echo("password WRONG"); 
} 

if(ssh2_scp_recv($connection, '/home/pathtoDLfile', '/home/pathtoLocationDestination')){ 
    echo("received"); 
}else{ 
    echo("NOT received"); 
} 

echo("end"); 
+1

你確定你有正確的文件路徑? ''/ home/username/pathtoDLfile'',可能? –

回答

3

請檢查'/ home/pathtoDLfile'和'/ home/pathtoLocationDestination'以確保它們是文件名,而不是目錄。

特別注意,目標位置('/ home/pathtoLocationDestination')需要是文件名,而不僅僅是目錄路徑。如果您當前只指定目錄名稱,則可以將所需的文件名追加到路徑中。

4

它看起來像you'v e指定了保存文件的位置的目錄,而不是文件名。