各位大神,现在都12点了,小弟这个问题无法解决了,我的java代码,
URL realUrl = new URL(“http://119.6.7.240/admin/command/control.do”);
URLConnection conn = realUrl.openConnection();
conn.setDoOutput(true);
conn.setDoInput(true);
try (OutputStream out = conn.getOutputStream();){
OutputStream buffer = new BufferedOutputStream(out);
OutputStreamWriter writer = new OutputStreamWriter(buffer, "utf8");) {
writer.write(bodyStr);
writer.flush();
writer.close();
}
以上这段代码,在我本地完美运行,可是一放到云服务器上,conn.getOutputStream()这句代码就报错,报Connection timed out错误,这是为什么呢,我没有改变任何代码,放到服务器上就报错,这是为啥啊??跪求JAVA大神啊
首先你得确定网络连接没问题吧?
还有端口占用 资源占用之类的
timeout是超时,检查下你的ip是否能访问到,这个是公有ip么?我试验了下,在我这里是不能访问的。这个服务器是你控制的么?有没有80端口映射,是否连上了网?
这个服务器如果是云服务器的话,找他们的技术帮你看下。阿里云的话,是24小时工作的,你现在也可以找他们。
如果这个服务器不是你控制的,并且你连不上,那就是服务器的问题了。
连接超时,检查下ip你能ping通吗?然后看公网服务器是不是禁用了一些端口,看是不是把80,8080禁用了,或者是否是你本地防火墙的原因?!
看你的url地址没写默认端口号,那么默认端口就是80端口,确认一下你云服务器web项目是否用的80端口,如果不是请在url里加入响应端口号
首先你得确定网络连接没问题吧?
还有端口占用 资源占用之类的
连接超时,检查下ip你能ping通吗?然后看公网服务器是不是禁用了一些端口,看是不是把80,8080禁用了,或者是否是你本地防火墙的原因?!
timeout是超时,检查下你的ip是否能访问到,这个是公有ip么?我试验了下,在我这里是不能访问的。这个服务器是你控制的么?有没有80端口映射,是否连上了网?
这个服务器如果是云服务器的话,找他们的技术帮你看下。阿里云的话,是24小时工作的,你现在也可以找他们。
如果这个服务器不是你控制的,并且你连不上,那就是服务器的问题了。
最大的可能性就是端口问题。
ip问题,测试一下连接是否通
在你的云服务器上ping这个Ip,可以的话,在看端口。最后建议最好用域名访问,
你检查一下Ip地址是否正确,应该是连接超时了
服务器访问不了这个ip
如果是阿里云服务器的话要填内网ip也就是局域网Ip 他会自动映射成外网ip
你这个ip是公网ip,在本地能访问到,但是部署到阿里云的内网环境 访问不到,是做外网映射的时候配置问题
貌似都ping不通服务器地址,检查ip
先直接在电脑上访问下,看能否访问。或者把超时时间延长下。
检查ip间是否ping的通
IP问题
放到公网上最好使用域名,内网IP在公网上是无法访问到的
119.6.7.240 这个ip是你们服务器的内网ip吧,阿里云怎么能访问你们的内网ip呢
ping一下服务器试试
方案一:ping一下该主机
方案二:调大超时时间
除了ip还有端口是否正确,最好telnet
问个题外话,为什么访问http接口不用httpclient等封装好的呢? 要自己通过URLConnection来访问?