全部,
我有一个远程 ftp 服务器的问题,它让我忙了三天,现在我要疯了。:(
前段时间,我写了一个使用 apache commons-net 2.0 的简单 ftp 检索器类。该类在 5 个不同的 ftp 服务器上运行良好,我可以根据需要检索数据。现在我遇到了一个我需要连接的服务器,它不允许我列出目录或检索数据。
这是我的班级发送和检索的命令的顺序:
220 (vsFTPd 2.0.1)
USER XXXXXXX
331 Please specify the password.
PASS XXXXXXX
230 Login successful
TYPE I
200 Switching to Binary mode.
PASV
227 Entering Passive Mode (XXX,XXX,XXX,XXX,XXX,XXX)
NLST
150 Here comes the directory listing.
226 Directory send OK.
SYST
215 UNIX Type: L8
PASV
227 Entering Passive Mode (XXX,XXX,XXX,XXX,XXX,XXX)
LIST
150 Here comes the directory listing.
在最后一行,我的代码无限期挂起(好吧,我在等待 2 小时后将其杀死,看看它会阻塞多长时间)。我已经尝试了一切,从使用活动连接到设置 ASCII 类型到使用不同的 ftp 库 - 总是得到相同的结果。
通常,我只会打电话给这些人并告诉他们他们的服务器配置不正确。但是,通过 FileZilla 进行连接不仅可以工作,而且速度极快,而且不会引起任何问题。此外,通过 linux 上的命令行连接就像一个魅力。
我完全迷失在这里。有人知道我为什么会遇到这个问题吗?
干杯