使用socket.io连接到公共IP地址

我需要做什么才能使用我的公共IP地址连接到服务器? 到目前为止,我只能在本地连接。 这是我的代码。

服务器代码:

var app = require('express')(); var server = require('http').Server(app); server.listen(80, function(){ console.log("Server is running..."); }); 

客户端代码(有时会触发一次,直到连接):

 try { socket = IO.socket("http://192.168.1.33:80"); } catch (URISyntaxException e) { e.printStackTrace(); } socket.connect(); 

好像只是改变本地地址给公众一个不行。 我到底需要做什么?

更新:我做了这些来解决这个问题。

  1. 使用我的电脑公共IP地址。 (不是路由器的)
  2. 将端口从80更改为另一个端口。
  3. 允许防火墙打开端口。 很重要
  4. 端口转发并确保端口处于打开状态。 港口80仍然closures,即使在第3步,但其他港口工作。