云服务器使用FTP,获取不到文件列表的解决办法
近期在写一个程序,里面包含了一些ftp的功能,本来我是在自己的ipv6的服务器上运行的,没有任何问题,但是当我迁移到云服务器上面就出现了问题。
其中,FTP的配置参考了这篇如何在Ubuntu 22.04上搭建FTP服务器 - sll0917 - 博客园 (cnblogs.com)。
当我使用FileZilla的时候提示“服务器回应不可路由的地址。使用服务器地址代替。”倒也能正常使用,用自己写的代码也可以登录ftp,但是,当我使用自己写的代码去获取文件列表的时候,发现数据诗空的,然后经过我的搜索排查,有说是需要设置被动模式的,但是我设置被动模式之后,ftp直接运行不了,报错,就是加上这一条“PASV_enable=YES”,好多文章都写了这一条,我不清楚是什么原因。
然后我就找到了一个博客说是需要把listen改为YES,把listen_ipv6 改为NO,经过测试,可行,可能是现在ftp默认使用了ipv6,但是使用的公有云还是ipv4的原因。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 一文读懂知识蒸馏
· 终于写完轮子一部分:tcp代理 了,记录一下