重新启动时Openshift节点应用程序错误
Openshift node app error when restarting
我有一个 node/socket.io 聊天应用程序托管在 openshift 上,如果我 ssh 进入服务器并执行 "node main.js"(其中 main.js 是服务器脚本,它会正确启动开始聊天),我无法通过网络界面在服务器上启动应用程序,它会自动继续;如果我只是通过 ssh 启动应用程序,它会在我退出终端后立即停止工作。
我在通过 Web 界面启动应用程序时遇到此错误:
Starting Node.js application...
Application is already stopped.
Warning! Could not start Node.js application!
Failed to execute: 'control restart' for /var/lib/openshift/57003fbe7628e1491d00011e/nodejs
如果相关,我的 package.json 文件是
{
"name": "rainychat",
"version": "1.0.0",
"description": "rainychat, my chat app",
"main": "main.js",
"dependencies": {
"express": "^4.13.4",
"socket.io": "^1.4.5",
"validator": "^5.1.0"
},
"devDependencies": {},
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
},
"author": "JG",
"license": "ISC"
}
在这里您可以看到 ftp 应用程序的文件:
我无法解读该错误的含义...
我的main.js代码
var app = require('express')();
var http = require('http').Server(app);
var io = require('socket.io')(http);
app.get('/', function (req, res) {
res.sendFile(__dirname + '/chat.html'); // /home/redadmin/public_html/rainychat.com
console.log('enviado');
});
app.set('port', process.env.OPENSHIFT_NODEJS_PORT || 8080);
app.set('ip', process.env.OPENSHIFT_NODEJS_IP || '127.0.0.1');
http.listen(app.get('port'), app.get('ip'), function () {
console.log('Listening on port ' + app.get('port'));
});
//... More code
如果您要创建新的 Node 项目,请从 npm init
开始创建 package.json
文件。您可以添加 --auto
选项为其提供安全的默认值。
请记住,JSON 文件必须有效 JSON,因此请使用 jsonlint
或 an online validator.
等工具对其进行测试
您的项目具有的任何依赖项都应在包文件中详细说明。这是自动完成的 npm install express --save
.
我有一个 node/socket.io 聊天应用程序托管在 openshift 上,如果我 ssh 进入服务器并执行 "node main.js"(其中 main.js 是服务器脚本,它会正确启动开始聊天),我无法通过网络界面在服务器上启动应用程序,它会自动继续;如果我只是通过 ssh 启动应用程序,它会在我退出终端后立即停止工作。
我在通过 Web 界面启动应用程序时遇到此错误:
Starting Node.js application...
Application is already stopped.
Warning! Could not start Node.js application!
Failed to execute: 'control restart' for /var/lib/openshift/57003fbe7628e1491d00011e/nodejs
如果相关,我的 package.json 文件是
{
"name": "rainychat",
"version": "1.0.0",
"description": "rainychat, my chat app",
"main": "main.js",
"dependencies": {
"express": "^4.13.4",
"socket.io": "^1.4.5",
"validator": "^5.1.0"
},
"devDependencies": {},
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
},
"author": "JG",
"license": "ISC"
}
在这里您可以看到 ftp 应用程序的文件:
我无法解读该错误的含义...
我的main.js代码
var app = require('express')();
var http = require('http').Server(app);
var io = require('socket.io')(http);
app.get('/', function (req, res) {
res.sendFile(__dirname + '/chat.html'); // /home/redadmin/public_html/rainychat.com
console.log('enviado');
});
app.set('port', process.env.OPENSHIFT_NODEJS_PORT || 8080);
app.set('ip', process.env.OPENSHIFT_NODEJS_IP || '127.0.0.1');
http.listen(app.get('port'), app.get('ip'), function () {
console.log('Listening on port ' + app.get('port'));
});
//... More code
如果您要创建新的 Node 项目,请从 npm init
开始创建 package.json
文件。您可以添加 --auto
选项为其提供安全的默认值。
请记住,JSON 文件必须有效 JSON,因此请使用 jsonlint
或 an online validator.
您的项目具有的任何依赖项都应在包文件中详细说明。这是自动完成的 npm install express --save
.