如何将nodejs webapp设置为服务?

问题描述:

我安装了nodejs,安装了npm,安装了模块以及我的应用代码。在我的开发机器上,我只需在我的应用程序文件夹中键入node app.js来启动开发服务器,但现在是时候将它部署到真正的服务器,我遇到了问题。如何将nodejs webapp设置为服务?

  1. 哪里是放置我的应用程序代码的常规文件夹。
  2. 应该使用哪个用户来运行我的nodejs应用程序。以及如何让用户只有执行应用程序代码的权限,以及80,443,843端口。
  3. 如何编写服务脚本,并通过kill pid停止服务器?

端口由您的应用程序侦听的端口决定。如果你有通过ssh到服务器的物理访问权限并拥有root权限等,那么你可以把它当作开发服务器。

我会推荐forever保持它的运行,也许写一个平衡器来一次处理多个节点应用程序。

权限处理必须基于连接来完成。用户连接到您的服务,并对其权限级别进行身份验证。这是手工完成的。

你放置它的文件夹不是很相关。

如果你有一个no.de服务器,你可以学习如何使用他们的智能机器。对于Amazon EC2来说,这是类似的指南。

+0

我发现[多节点](https://github.com/kriszyp/multi-node)但是谢谢。 – 2011-04-15 07:23:39

我推荐Monit和Upstart。你可以阅读关于该解决方案herehere。你也可以在nginx中创建一个简单的负载平衡器。