简体   繁体   English

无法在openshift上部署Node.js套接字io应用程序

[英]unable to deploy nodejs socket io application on openshift

I have a simple chat application based on nodejs and socket io. 我有一个基于nodejs和socket io的简单聊天应用程序。 Works fine locally. 在本地工作正常。 But i am facing issues in deploying it to openshift. 但是我在将其部署到openshift时遇到了问题。

I have read and implemented almost all related threads on Stack Overflow. 我已经阅读并实现了Stack Overflow上几乎所有相关的线程。 No progress yet. 尚无进展。

Client Side(index.html): 客户端(index.html):

<script src="/socket.io/socket.io.js"></script>
var socket = io.connect("http://www.abcd.com:8000/"); 

where 'abcd' is an attached domain name to the openshift app. 其中“ abcd”是openshift应用程序的附加域名。

Server Side(index.js): 服务器端(index.js):

//Express initializes app to be a funciton handler that is to be supplied to the http server later
var express = require('express');
var app = express();
//
var server = require('http').Server(app);
var io = require('socket.io')(server);
var mongoose  = require('mongoose');

var server_port = process.env.OPENSHIFT_NODEJS_PORT || 3000
var server_ip_address = process.env.OPENSHIFT_NODEJS_IP || '127.0.0.1'

//server listening
server.listen(server_port, server_ip_address, function(){
  console.log('listening on *:'+server_port);
});

I have done the following already: 我已经做了以下工作:

  • Changing the client side URL to: ws://www.abcd.com:8000/ 将客户端URL更改为:ws://www.abcd.com:8000 /
  • replacing io.connect with io 用io替换io.connect
  • switching the port to 80 将端口切换到80
  • and a lot of other things. 还有很多其他事情。

ERROR : 错误

在我看来,您没有将websocket绑定到ip和端口,请在server.listen之后尝试以下操作:

var socket = io.listen(server);

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM