因为是刚配置的宝塔面板,对很多功能并不熟悉。最近在使用 FileZilla 链接网站时出现了“服务器发回了不可路由的地址。使用服务器地址代替。”的问题,导致无法链接网站FTP。具体显示内容如下:

由于个人对 FTP 着实不太了解,解决的历程颇为艰辛,为了避免同样遇到此问题的小伙伴走太多弯路,特此记录下来,希望能够帮助到遇到同样问题的你。

快速解决问题最简单的方式莫过于从网上查找解决方案了。简单搜了一下,大部分建议修改 FTP 连接的被动模式为“退回到主动模式(F)”,如下图所示:

自己试着设置了下,非常遗憾的是结果如下:

问题依旧没有解决,只得继续搜索,又发现一条解决方案是说修改 Pure-Ftpd 的配置文件,具体如下:

将 ForcePassiveIP 打开,并将后面的 IP 地址修改为你服务器的外网 IP ,自己试了下,运行结果如下:

依旧“读取目录列表失败”,猛然间想起修改 Pure-Ftpd 配置文件时上方有个 PassivePortRange(被动模式端口范围)的选项,如下图所示:

原来是自己没有开启这个端口范围导致的,登录阿里云控制台,修改防火墙规则如下:

然后记得不要忘记宝塔面板下的安全选项卡下同样添加这个规则。

最终,目录列出成功,问题解决!