【发布时间】:2012-07-02 14:44:06
【问题描述】:
我们正在使用 Indy TIdFTP 和 FileZilla 0.9.39 beta FTP 服务器。
经常(并非总是)我们的客户端收到以下异常:
exception class : EIdReplyRFCError
exception message : Can't open data connection.
main thread ($d38):
006352e6 +03a IdReplyRFC 258 +1 TIdReplyRFC.RaiseReplyError
0063af39 +005 IdTCPConnection 540 +0 TIdTCPConnection.RaiseExceptionForLastCmdResult
0063b17c +050 IdTCPConnection 644 +10 TIdTCPConnection.CheckResponse
0063aed2 +03a IdTCPConnection 529 +2 TIdTCPConnection.GetResponse
0065986d +1ad IdFTP 1460 +29 TIdFTP.InternalGet
006595bb +0f3 IdFTP 1386 +16 TIdFTP.List
这个错误只发生在他的网络内部!而且它不一致。
我无法在我们的网络上重现此错误。
我在网上搜索了整个网络以找到解决方案,但没有找到任何东西。
有什么办法可以解决这个问题???
编辑:我们正在使用“被动”模式。
【问题讨论】:
-
更多细节可能会有所帮助:是否涉及任何防火墙或代理?数据连接使用可能被阻塞或关闭的单独端口。 “被动”模式 FTP 也可能会有所帮助(Indy FTP 具有此模式的属性)。
-
@mjn,我们正在使用“被动”模式。如果涉及防火墙或代理,我们能做些什么吗?正如我所说,这有时有效,有时失败......
-
FileZilla Server 的最新稳定版本为 0.9.41。 “beta”听起来不是一个稳定的版本,我会尝试升级。
-
@mjn,0.9.41 也是“测试版”。我已经升级了,正在用客户端测试...
-
“无法打开数据连接”在被动模式下意味着 FileZilla 无法在其端打开新的侦听端口,或者在等待
TIdFTP连接时超时。第一个是服务器端的资源问题,另一个是客户端和服务器之间的网络问题。您必须查看 FileZilla 的日志以确定出了什么问题。
标签: delphi ftp delphi-7 indy indy10