FTPClient listFiles 阻塞问题
Android端使用 FTPClient 实现上传文件到到filezilla server(filezilla server部署在阿里云服务器)出现
listFiles阻塞。具体的现象是 Ftp Client成功登陆Ftp服务,进一步执行 listFiles方法程序卡主一直没有返回。
经过一番排查发现问题出现在阿里云ECS安全策略上。阿里云ECS默认所有的端口都是“关闭”状态,只有
添加到安全策略表中的端口才能使用。Ftp命令端口默认21,如未更改,将21端口添加到ECS安全策略表。
除此之外需要还需要将filezilla server被动模式占用的端口设定在一定范围内,比如6000- 6008,再将这些
端口添加到ECS安全策略表中。可以通过filezilla Client设置filezilla server 被动模式下数据端口范围,具体
如下图所示:
图1 FileZilla Server 被动模式数据端口配置图