在ExpressJS中运行多个应用程序

时间:2013-01-04 12:17:22

标签: javascript node.js express iisnode

我目前正在IIS7上运行iisnode。目前只有一个应用程序(app.js)使用MongoDB。只是澄清一下,当我说'app'时,我指的是一个实际的ExpressJS应用程序。

我希望能够在同一个地方托管多个快递应用。所以例如,如果你去/ app2 /它会加载该文件夹中的app.js。我认为这可以通过重写规则来实现,但我不确定这是最好的方法。也许最好只是让某种控制器根据子域或路径切换到应用程序?

这是我正在努力的结构:

Site Root
|_ app1/
|  |___ app.js
|  |___ routes/
|  |___ models/
|  |___ public/
|
|_ app2/
   |___ app.js
   |___ routes/
   |___ models/
   |___ public/

只需提出这个问题,就这种设置的最佳方法提出一些建议。 iisnode通常只配置一个app.js:

<handlers>
  <add name="iisnode" path="app.js" verb="*" modules="iisnode" />
</handlers>

也许有多个或者app.js可以像代理一样?

任何帮助表示赞赏!

1 个答案:

答案 0 :(得分:4)

我会创建一个包装器快速应用程序,并使用它将路由转发到您的两个应用程序。这就是快递的作者TJ Holowaychuk推荐的方法。 See his short screencast for details.