0

我有一个在许多域(所有相同的 IP)上运行 apache 的 VPS,但我想开始为我的一些站点运行 nodeJS/feathersJS。

除了使用不同的端口外,我似乎无法弄清楚如何运行多个实例。但是,只要您添加了端口,所有其他站点都可以使用所有其他站点(即使是运行 apache 站点的站点)。

有没有一种简单的方法可以限制 domain-1.com 显示 feathersjs 站点,以及 domain-2.com 仍然使用 apache?

有什么我想念的吗?

我是 node 新手,从 PHP 人过渡到 nodeJS 人......所以请原谅我的无知。

我发现了一些我可以使用的非feathersJS模块,但是必须有一种更简单的方法,然后修改feathersJS......不是吗?

*编辑我已经找到了 apache 代理解决方案并实现了它。但是,现在我需要确保运行节点的端口没有在我的其他域上使用。

Example.com 现在使用 apache 代理运行 localhost:3030 但 anotherexample.com:3030 也是如此

有没有办法限制这个?

我找到了一些为 node 执行此操作的库,但似乎没有一个在 feathersJS 中得到很好的实现。

*再次编辑我认为提到的 vHost 羽毛是我正在寻找的东西,当我测试它时会更新。

4

1 回答 1

1

有不同的方法可以解决,但一种方法是使用mod_proxy for Apache。然后,在您的域配置中,您将指向您想要运行的应用程序的端口:

ProxyPass / http://www.example.com:8001/
ProxyPassReverse / http://www.example.com:8001/

虽然将 Apache 或 NginX 代理放在 Node 应用程序前面(并提供静态内容)对于流量较高的站点通常是一个好主意,但对于较小的项目,您也可以只使用 Node 而不必担心 Apache。要在不同的域上托管不同的应用程序,您可以使用vhost Express 中间件。可以在此处找到如何使用 Feathers 进行设置的示例。

于 2016-08-21T10:51:23.637 回答