java - 无法在80以外的端口上发出http请求

时间:2011-07-18 11:24:31

标签: java http url port

我的java程序正在点击“http:// url:port”类型的网址来获取一些数据。在tomcat 6上部署的本地Windows机器上,它工作正常。但是在生产这是一台有tomcat 6的linux机器上,它给了我连接超时。

具有讽刺意味的是,如果我点击没有端口号的URL,它将成功地为我带来输出但不带端口。没有找到任何线索,请帮忙。

我用来连接和获取数据的代码段是:

HttpClient httpclient = new DefaultHttpClient();
HttpGet httpget = new HttpGet("59.162.167.36:80/api/…");
httpget.setHeader("User-Agent", "UserAgent: Mozilla/5.0");
HttpResponse response = httpclient.execute(httpget);
HttpEntity entity = response.getEntity();

3 个答案:

答案 0 :(得分:4)

一个显而易见的可能性是生产机器前面的防火墙阻止访问该端口。检查防火墙。

答案 1 :(得分:1)

答案很简单:在生产中,您没有打开该端口,请联系管理员或托管并发出问题。当然他们会证实我的论文。

答案 2 :(得分:1)

您的托管服务提供商几乎肯定会在数据中心内实施某些描述的防火墙。这是常见的做法。向他们发送一条消息,询问端口X是否被阻止,如果是,他们可以打开它。