我本地编写了一个使用socket.io和express模块的nodeJS应用程序。 我想使用openshift进行托管。 因此,我将主.js更改为server.js,它似乎是openshift文件的索引等效项,并将服务器端口设置更改为:OpenShift NodeJS部署:socket.io index.html端口分配等
var server = require('http')。createServer(app)。监听(process.env.OPENSHIFT_NODEJS_PORT || 3000);
如某些帖子所示。 但是之后git的承诺,我仍然得到:
远程:信息:socket.io开始 远程:警告:错误提出:错误:听EACCES 远程:DEBUG:计划节点server.js代码为0 退出远程: 远程:DEBUG:使用'node server.js'开始子进程
和网站无法正常工作。
由于应用程序正在服刑的HTML文件中,有两个地方,那里的港口被提及,其坐在那的index.html供应:
头:
<script src='//localhost:3000/socket.io/socket.io.js'></script>
和JavaScript的HTML文件内:
var socket = io.connect('//localhost:'+process.env.OPENSHIFT_NODEJS_PORT || 3000);
// INTIAL VARS和从服务器 socket.on( 'clientConfig',onClientConfig)多列表;
所有文件和模块看似上传,但EACCES错误依然存在。
我感觉可能是到localhost:3000的标头链接可能是跳过点,但我不确定。任何人有任何想法,问题是什么? 另外,在socket.io模块文件夹中没有:socket.io/socket.io.js文件,我发现它很混乱。
因此,在server.js中,它需要是8080,而在html中,所有的socket都是ws://app-domain.rhcloud.com:8000,是的? –
正确。您也可以使用wss://app-domain.rhcloud.com:8443来使用ssl – 2014-03-27 18:40:28
好吧,我将server.js更改为: –