【问题标题】:INDY FTP ECONNREFUSED - Connection refused by serverINDY FTP ECONNREFUSED - 服务器拒绝连接
【发布时间】:2014-03-28 13:57:57
【问题描述】:

我正在 Delphi XE5 上为 Android 开发 FTP 服务器。 (组件 IdFTPServer)。 服务器启动:

procedure TForm1.Button1Click(Sender: TObject);
begin
  Server.DefaultPort := 1032;
  Server.DefaultDataPort := 1926;
  Server.Bindings.Add.IPVersion := Id_IPv4;
  //Server.ReuseSocket := rsTrue;
  Server.Active := true;
  if Server.Active = true then
  begin
    Label1.Text := GetIP+':'+IntToStr(Server.DefaultPort);
  end;
end;

当客户端想要连接时(我正在使用 FileZilla)我收到错误:ECONNREFUSED - 连接被服务器拒绝

但是当我为 Windows 开发 FTPServer 时,我没有收到错误并且客户端可以连接。成功了……

【问题讨论】:

    标签: android delphi ftp indy delphi-xe5


    【解决方案1】:

    ECONNREFUSED 表示 OS 本身,而不是 Indy,拒绝了连接。 Indy 从来没有看到被拒绝的连接,因此无法控制它们。对于 Windows 服务器,ECONNREFUSED 表示服务器端口根本没有打开,或者此时该端口的待处理客户端连接已满。在 Android 上,可能也是这种情况,但 Android 也有其他要求,例如需要启用 INTERNET 权限(当某些套接字错误发生时,最新版本的 Indy 现在会检查该权限),以及也可能还有 ACCESS_WIFI_STATECHANGE_WIFI_STATE 和/或 ACCESS_NETWORK_STATE 权限。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-10-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-11-30
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多