无法在openshift上部署nodejs socket io应用程序

时间:2015-08-31 12:28:44

标签: node.js socket.io openshift

我有一个基于nodejs和socket io的简单聊天应用程序。在当地工作正常。但我面临着将其部署到openshift的问题。

我已经在Stack Overflow上阅读并实现了几乎所有相关的线程。还没有进展。

客户端(index.html):

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

其中'abcd'是openshift应用程序的附加域名。

服务器端(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);
});

我已经完成了以下工作:

  • 将客户端URL更改为:ws://www.abcd.com:8000 /
  • 用io替换io.connect
  • 将端口切换为80
  • 还有很多其他的事情。

错误

1 个答案:

答案 0 :(得分:0)

在我看来,你并没有将你的网页绑定到ip&amp; amp;港口, 在你的server.listen之后,试试这个:

var socket = io.listen(server);