在Linux服务器上如何部署node.js应用程序?

我在一台Linux服务器上运行4个独立的Node.js应用程序,其中包含不同的端口和代理。

因为我(现在)是服务器中的唯一用户,所以放置应用程序以及如何运行应用程序并不重要。 目前我的应用程序保持在我的主目录下( ~/app1/~/app2/等)。

所以我的问题是:我应该在哪里放置应用程序,以便他们可以在多个用户之间共享? 有没有类似于/var/www的标准地点?

我使用https://github.com/visionmedia/deploy来部署我的应用程序。 它会创build一个/var/www/productname目录。 在那个目录里你有源代码,当前的和共享的。 共享目录包含logpid文件。

我发现一个好的目录结构,这就是我所有的项目所使用的。

我在同一个服务器上运行Apache,除了Node.js,所以我不太喜欢在同一个目录下有Apache和Node.js的应用程序。 我的Apache托pipe的应用程序进入传统的/ var / www /path,我把我的Node.JS应用程序/ var / node /下。 这是由于我已经在Apache(dynamic虚拟主机)和Node.JS中设置了一些自动化。

有关我的设置和自动化代理和Apache部署的更多信息可以在这里find: 如何使用虚拟主机旁边节点http代理?

如果您在Linux服务器上使用节点JS应用程序的AWS Elastic beans堆栈,那么它应该位于/var/app/current/目录中

按照这里的答案的指导方针 – https://serverfault.com/a/96420表明/ opt / node可能是一个更好的地方,因为它是一个catchall目录,为用户添加的程序文件保留