我不确定这是否是我做错了,或者服务器是否不支持 phpseclib 或什么,但我正在尝试连接到仅接受安全 FTP 连接且仅来自某些 IP 地址的 FTP 服务器。现在我知道 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);
然后echo $sftp->getSFTPLog();
在出口上方输出,但这没有输出任何东西。
在我刚刚的页面上Login Failed
,所以我没有收到任何错误$sftp->getSFTPErrors();
。
我对在 PHP 中使用安全的 FTP 连接完全陌生,不知道我做错了什么。有人可以帮我调试问题吗?