首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在远程服务器上与Socket.io建立连接

在远程服务器上与Socket.io建立连接
EN

Stack Overflow用户
提问于 2016-02-14 18:07:01
回答 1查看 1.1K关注 0票数 1

我创建了一个简单的应用程序Laravel来测试一些基本的东西:广播事件并在socket.io上收听它们。

一切都很好。

但是,我想把这个应用程序上传到一个名为learn-redis的远程服务器上,并面临一个挑战。我的socket.js文件如下所示:

代码语言:javascript
复制
var server = require('http').Server();

var io = require('socket.io')(server);

var Redis = require('ioredis');

var redis = new Redis();

redis.subscribe('test-channel');

redis.on('message', function(channel, message){

    message = JSON.parse(message);

    io.emit(channel + ':' message.event, message.data);

});

server.listen(8000); 
  1. 在Laravel中,我知道我可以监听端口8000,因为它在运行vagrant up时会在控制台上显示。我的远程服务器呢?我要用哪个端口?
  2. 在客户端,我有这个代码。 var socket = io('http://192.168.10.10:8000'); 新Vue({ el:‘#演示’),数据:{用户:{!App\User::all()!},就绪: function(){ socket.on('test-channel:App\Events\UserSignedUp',函数(Data){ this.users.push( data.user );}.bind(This);});

我已经提取了Vue.js和Socket.io.js库,但是当我尝试执行var socket = io('http://example.com/learn-redis:8000')时,会得到错误http://example.com:8000/socket.io/?EIO=3&transport=polling&t=LBWnq-U net::ERR_CONNECTION_TIMED_OUT

EN

回答 1

Stack Overflow用户

发布于 2017-02-09 16:47:28

您需要有一个VPS服务器才能安装节点,很可能是在共享主机上,而且大多数提供者都不允许您安装节点。您最好的选择是要求您的提供商为您安装节点,或者如果您有资金,请升级到VPS服务器。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/35395238

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档