㈠ 打开数据socket错误,是什么原因
由于服务器安全设置,只放开部分端口可以访问服务器,因此这些随意的端口都被拦截,造成无法建立FTP连接。这是服务器网管为了保证用户的安全,所以用户在FTP的时候要选用PORT模式。FTP设置帮助:FTP设置时,请勿选择在PASV模式下上传,否则将出现登录FTP后,无法列表等异常情况。相同的软件,版本不同,设置方法也略有不同,因此需要根据实际情况进行设置。或者把系统自带的防火墙及杀毒软件的防火墙关闭看看。★Cute FTP 3.5英文版:FTP—>Settings—>Options—>Firewall,将“PASV mode”前复选框中的打勾去掉。
★Cute FTP3.5中文版:FTP—>设置—>选项—>防火墙,“PASV方式(A)”前复选框中的打勾去掉。
★Cute FTP4.0中文版:右击你所建立的ftp站点—>选择属性(properties)—>去掉"use PASV mod" 选择项
★Cute FTP Pro2.0中文版:编辑—>全局设置—>连接—>连接类型,“PASV/PORT”下拉选项菜单选择PORT。
★Leap FTP2.7.2:Sites—>Site Manager—>Advanced,将“Use PASV mode”前复选框中的打勾去掉。
★flashfxp : 选项->参数->代理->去掉“使用被动模式”
★flashget : 选项->参数->代理服务器->编辑->将“Use PASV mode”前复选框中的打勾去掉。
一般出现此类问题的原因是客户端网络出口与服务器端防火墙的端口设置冲突造成的。
所以对于其他软件只要不选择PASV为连接类型,一般都可以解决这类问题了。
㈡ android与我的电脑进行socket通信时出现异常java.net.SocketException: Connection reset
这是因为你的8888端口被使用了。
或者说被之前的服务器占用没有关闭。
你可以修改一下8889试试
㈢ 常见Socket连接错误及原因有哪些
socketerrorcode:11001,socketerrorinfo:不知道这样的主机。 表示您的计算机无法连上服务器,请检查您的Proxy设定以及Proxy相关账号,或暂时取消您防毒软件的“个人防火墙”。 2、出现网络联机错误Socketerror#11004 socketerrorcode:11004,socketerrorinfo:请求的名称有效,但是找不到请求的类型的数据。 应该是网络联机状态问题,请用户检查网络联机是否正常。 3、出现网络联机错误Socketerror#10060 Connection Timed Out socketerrorcode:10060,socketerrorinfo:由于连接方在一段时间后没有正确答复或连接的主机没有反应,连接尝试失败。 表示您与服务器发生联机逾时错误,请检查您的Proxy相关设定,以及Proxy Server是否已将SSL 443 port打开。 4、出现网络联机错误Socketerror#10061 socketerrorcode:10061,socketerrorinfo:由于目标计算机积极拒绝,无法连接。
㈣ 网络异常 socket Error #10054 经常卡 还掉线
第一台机子是风扇坏了,或者里面灰尘很厚了,风扇没用了.第二台机子你换个内存条试试,排除内存的原因就是显卡坏了,判断方法是,右击桌面空白处,属性,设置,高级,适配器,看显存,如果显存显示为0的话,说明显卡坏了.希望能帮到你,不行的话一对一提问吧
㈤ C# socket 通信系统,socket断线重连问题
首先断线有很多可能,服务器端代码错误或者网络路由问题,等等,解决这些断线问题的方法就是心跳检测,看应用需要采用几秒客户端(C)向服务器端发送【ping】协议(协议名称可以自己定)。然后服务器(S)要有个储存器(可以是哈希表或者是类数组)保存客户端连接句柄以及一些必要属性,还要有个时间,用来对比C每次ping的时间是否超过设定超时时间。如果超时就将C的Sock 句柄清除。到这S端就可以了。C端还要有个断线处理,监视检测自己是否断线,做个重连机制,这样一个完整的通讯就差不多了,至于其他应用就要看自己的需要通过协议来操作了。 希望这些能帮到你
㈥ java中使用Socket连接,关闭是出异常如何处理
你光有try catch,但实际并未对产生的网络异常进行处理,然后继续循环,那自然是无限异常下去了。只要在catch到异常后进行相应处理即可,比如关闭连接,然后退出。在服务端,客户端都加上这个处理,比如在客户端加,如下
publicvoidrun()
{
while(true)
{
Useru=newUser();
u.setName("1");
ObjectOutputStreamoos;
try
{
oos=newObjectOutputStream(s.getOutputStream());
oos.writeObject(u);
}
catch(Exceptione)
{
//TODOAuto-generatedcatchblock
e.printStackTrace();
//注意,这边会看到显示的是true,因为对方并没有调用close来关闭连接,而是直接终止程序
System.out.println(s.isConnected());
if(s!=null)
{
try
{
s.close();
s=null;
}
catch(Exceptionex)
{
ex.printStackTrace();
}
System.out.println("远程连接异常,关闭连接");
return;
}
}
}
}
注:
你的这种情况即不能用u=ois.readObject())!=null来判断,也不能用s.isConnected&&!s.isColse()来判断,因为你是直接终止服务端或者客户端的运行,而不是先close连接,再终止程序。