filezilla登录宝塔面板报错:服务器发回了不可路由的地址。使用服务器地址代替解决方法

2019-12-11
0评论
/
2402阅读
爱搜啊

以前写过一篇关于FTP登录错误 227 Entering Passive Mode错误 的文章《FTP解决227 Entering Passive Mode错误FTP关闭被动模式PASV命令PORT连接方法》,没想到最近又遇到FTP登录失败的问题了,这就很难受了。

首先说下是什么情况。

使用Fliezilla连接宝塔面板的FTP服务器报错

错误:服务器发回了不可路由的地址,使用服务器地址代替/读取目录列表失败

状态:    连接建立,等待欢迎消息...

状态:    已登录

状态:    读取目录列表...

状态:    服务器发回了不可路由的地址。使用服务器地址代替

Fliezilla连接宝塔面板的FTP服务器报错解决方法

Linux pure-ftpd服务器端

先报“服务器发回了不可路由的地址,使用服务器地址代替”,网上大部分方法是Fliezilla 修改连接的被动模式为“退回到主动模式(F)”,然后报“读取目录列表失败”。

1、这个问题是现在云服务器对于端口的管控比较严,没有开启的关系。查看Pure-Ftpd 配置 PassivePortRange(被动模式端口范围)的选项,记录端口号,默认一般是39000-40000,然后在云主机控制台防火墙加入39000-40000通过就可以了。

2、linux端,经过上面的修改是可以正常使用了,但是还会报错“服务器发回了不可路由的地址。使用服务器地址代替”,这个时间很多服务器因为用的是内网ip,公网ip是nat过来的,所以需要把ForcePassiveIP启用,并把ip地址改成公网ip,重启ftp服务

3、宝塔面板,安全放行39000-40000端口

Windows FileZilla Server 服务器端

打开FTP服务器设置程序FileZilla_Server_Interface.exe,点开设置,设置,默认是3000-4000,这边我为了和Linux设置的统一,改为了39000-40000,然后在云主机控制台防火墙加入39000-40000通过就可以了。

filezilla登录宝塔面板报错:服务器发回了不可路由的地址。使用服务器地址代替解决方法

用ftp上传下载PHP没有没有换行怎么办?

FTP上传bug解决方法

方法1: 将单行注释符 // 改成 多行注释符 /* 注释文字 */ 这样即使换行符丢失,也不影响后面源码的执行。(但是下载到本地二次修改时,依然是件头疼的事!)

方法2: FTP上传php文件不要使用ASCII模式,全部使用二进制方式。这是最保险的。 如何设置ftp软件以二进制方式Binary上传,请网络搜索下自己使用的ftp软件的设置方式。    【知识补充:FTP的ASCII和Binary传输模式】 :

FTP有ASCII和Binary两种传输模式

Binary模式不会对数据进行任何处理。

Ascii模式会将回车换行转换为本机的回车字符。

由于WINDOWS和UNIX的行结束符不一样。所以从WINDOWS用Binary传输方式传输文本文件到UNIX时可能会出现^M。同样从UNIX用Binary方式传输文件到WINDOWS时,也可能出现回车换行显示不正确的问题。

FTP上传bug解决方法

WINDOWS下新建ftp_ascii.txt内容如下

hello word!

WINDOWD TO UNIX !

TEST FTP ASCII;

我们分别用两种模式上传到UNIX.

ASCII模式正常

继续阅读《用ftp软件上传下载php文件时换行丢失bug


本站附件分享,如果附件失效,可以去找找看

诚通网盘附件百度网盘附件


标签: ftp
于2019-12-11发布