我有一个按如下所述操作FTP服务器的AWS EC2实例:
https://www.xadmin.net/how-to-setup-ftp-on-aws-ec2-instance/
EC2实例具有一个带有自定义TCP规则的安全组,以允许来自任何IP的连接。
通过FileZilla和其他FTP客户端的连接成功。我有一个Spring Boot应用程序连接到此EC2 FTP服务器,它在本地工作。但是,部署到Heroku时,挂起列出文件或获取特定文件的尝试将挂起,不会出现任何错误。Spring Boot应用程序使用EC2实例的完整公共URL作为ftp主机(ec2-xx-xxx-xxx-xxx.compute-1.amazonaws.com)。
我如何允许Heroku应用访问EC2 FTP服务器?
很可能是服务器配置错误,并在FTP PASV
命令响应中发送其内部IP地址。
尽管FileZilla和许多其他FTP客户端可以解决此问题,但Heroku可能无法解决。检查FileZilla日志文件中的内容:Server sent passive reply with unroutable address in FileZilla。
如果是这种情况,则需要修复FTP服务器。