2016-09-17 169 views
0

我有一个关于socket.io的问题。这是当我跑我的电脑上的代码(本地)我可以使用http://IP:120/socket.io/socket.io.js,但我用我的服务器(数字海洋服务器的Ubuntu 16.04)我没有看到这个网址什么,为什么?我的错在哪里?谁能帮我 ?我使用了createServer和Server功能,但两者都不起作用。Socket.io在ubuntu上无法工作16.04

var app = require('express')(); 
//var http=require('http').Server(app); 
var http=require('http').createServer(app); 
var io=require('socket.io')(http); 
app.get("/",function(req,res){ 

    res.sendfile(__dirname+"/asd.html"); 

}); 


io.on('connection',function(socket) { 


    console.log("A User Connected"); 


}); 

var port=120; 
http.listen(port,'ServerIP'); 

回答

1

该解决方案与设置通信所需的端口有关。
默认情况下,除了:80所有端口都挡在数字海洋

您需要打开端口120第一:

iptables -I INPUT 1 -i eth0 -p tcp --dport 120 -j ACCEPT 
+0

谢谢你,我解决了这个问题:) –