多个apache虚拟主机的node api

时间:2018-01-19 00:16:51

标签: node.js linux apache

我从一个Debian ip地址托管多个apache2虚拟主机。我想在node.js中为所有这些不同的网站构建一个大脑来处理服务器端操作,如firebase身份验证和服务器端功能。这些网站位于:

/var/www/website.one /var/www/website.two /var/www/website.three

有没有办法让所有这些网站保持静态,同时为所有共享后端操作调用localhosted node express应用程序? 节点应用程序位于:

/var/www/brain/

如果是这样,我怎么称呼它。我让它在localhost上运行,并保持与pm2一起运行。 或者我是否需要运行多个节点表达应用程序并将其不同的ips转发给它们?

1 个答案:

答案 0 :(得分:0)

我更熟悉如何在nginx中这样做,但这应该是一个很好的例子:
您将希望在Apache中使用proxy将虚拟主机引导至后端服务。所以,让我们说你要在端口8000上运行你的Node应用程序(你可以用pm2做,这很好)。每个虚拟主机Apache块都包含以下内容:

ProxyRequests on ProxyPass / ProxyPass / http://localhost:8000/

这会将您在虚拟主机中的根直接代理到您的Node应用程序。如果您只想要部分应用程序代理,请根据需要进行调整(比如说:您希望向您的Node应用程序/data发出请求,您的ProxyPass变量看起来像ProxyPass /data