0

我已将 NodeJS 和 NowJS 部署为 EC2 上的消息传递服务器,当我登录到 EC2 并从命令“node server.js”开始时它工作正常。但如果我在后台启动并使用命令“node server.js & > node.out”从 EC2 注销

有时 Jetty (Webserver) 无法连接 o NowJs。我不知道为什么会这样,我错过了什么吗?

这是我的代码。


var http = require('http');
var httpServer = http.createServer(function (req, res) {
  res.writeHead(200, {'Content-Type': 'text/plain'});
  res.end('Hello World\n');
});

httpServer.listen(3000);

var nowjs = require("now");
var everyone = nowjs.initialize(httpServer);
everyone.now.distributeMessage = function(ids, message){
    everyone.now.receiveMessage(ids, message);
};

顺便说一句,我仍然可以在 EC2 上的 firebug 中看到http://localhost:3000/nowjs/now.js,但是当我调用everyone.now.distributeMessage 时。我得到错误说它是未定义的。但是当我登录到 EC2 并再次启动服务器时,它工作正常。

4

1 回答 1

0

使用您提供的命令,您的进程正在用户的 ssh 会话中运行。当你注销会话消失。它可以像使用nohup一样简单。

试试这个:

nohup node server.js & > node.out
于 2011-09-13T21:34:29.853 回答