当前情况,有一台FTP服务器用来存放文件。有部署在两个机器上的同一应用往此FTP传输文件;一个测试,一个正式。测试和正式对FTP的配置完全相同,测试能正常传文件上去,正式不能。
在正式环境上,ping ftp:通;telnet ftp:通;命令行ftp登录,通;文件夹上直接输入地址ftp://ip打开远程ftp,通;用FileZilla工具连接,通并可以正常传文件上去,并在远程可以创建文件和目录。
现在,就是写的java代码,用sun的未公开的API写的,不行。用org.apache.commons.net.ftp工具jar写的代码,不行。以为是自己代码有某种缺陷,然后。下载了一个java版本FTP连接工具去连接这个FTP,此工具也连接不上。
当前,我的代码连接报错:java.net.ConnectException: Connection timed out: connect
这是什么gui?有思路的或者遇到过的,求指点。
用着呢,没有问题的,防火墙设置什么的,没有问题么?回复<aclass='referer'target='_blank'>@sxgkwei:只能说有可能的,没对java开放。如果是防火墙,那么可能出现其它工具能连,java版本的ftp工具就不能连的情况吗?
基本就是防火墙的问题。
看你的描述,推测你的FTP是使用的主动模式(默认),主动模式的情况下,客户端需要开启一个单独的端口来传送数据。
如果是Linux的话,你可以试试serviceiptablesstop(关闭防火墙),然后继续测试能不能行。
好的,万分感谢,我试试看。问题已经找到:现场的哥们测试机和正式机IP地址配置的不一样。正式机上IP地址配错了,也是醉了。不是传输方面的诡异类问题。版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。