簡體   English   中英

phpseclib 總是產生登錄失敗

[英]phpseclib always produces login failed

我不確定這是我做錯了什么,還是服務器不支持 phpseclib 或什么,但我正在嘗試連接到只接受安全 FTP 連接的 FTP 服務器,並且只接受某些 IP 地址。 現在我知道 FTP 服務器接受來自我的 VPS 服務器的連接,因為我已經通過 SSH 遠程連接到我的 VPS 並成功地從命令行手動連接到 FTP 服務器。

但是,當我使用 phpseclib 嘗試以下操作時,它總是會到達退出點。

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

$sftp = new NET_SFTP('***');
if(!$sftp->login('***', '***')) {
    $sftp->getSFTPErrors();
    exit('Login Failed'); // <-- Code always gets to this point
}

echo $sftp->pwd();

我不確定如何開始調試這個問題。 我也在他們的論壇上問過一個問題,試圖尋求幫助。 我嘗試使用define('NET_SFTP_LOGGING', NET_SFTP_LOG_COMPLEX);啟用日志記錄define('NET_SFTP_LOGGING', NET_SFTP_LOG_COMPLEX); 然后輸出echo $sftp->getSFTPLog(); 就在出口上方,但這不會輸出任何內容。

在頁面上我剛剛Login Failed ,所以我沒有從$sftp->getSFTPErrors();得到任何錯誤$sftp->getSFTPErrors(); .

我對在 PHP 中使用安全 FTP 連接完全陌生,不知道我做錯了什么。 有人可以幫我調試問題嗎?

您使用它的方式很明顯您看不到任何錯誤。 $sftp->getLastSFTPError()返回一個字符串,而$sftp->getSFTPErrors()返回一個數組,這就是您必須回顯以查看問題所在。

嘗試

print_r($sftp->getSFTPErrors());

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM