【发布时间】:2023-03-15 23:05:01
【问题描述】:
我的最终目标是让每个服务器实例的 node.js 更具成本效益。
我不是在运行游戏或聊天室,而是为客户提供简单的网站。我想在单个服务器上容纳多个客户端,但有多个网站使用主机标头映射从端口 80 运行。我仍然想像现在一样使用 express,但如果可能的话,让它更像是从端口 80 到其他节点应用程序的路由。如果以这种方式完成节点可能会更便宜,但目前对于我的目的来说它更昂贵,因为如果在端口 80 上运行每个客户都需要自己的盒子。此外,我的动机是专注于节点开发,但必须有理由这样做所以在成本方面。
我在 Windows 中为 ASP.NET 做了很多这样的事情,因为 IIS 开箱即用地支持这一点,我知道这对于 Apache 来说也是正常的。
如果这不是正确的问题或提出建设性的批评而不是随机的否决,请随时将其移至另一个论坛以进行堆栈交换。谢谢。
更新
我采用的方法是使用静态托管(通过 gatspy 和 s3),然后使用 API,而不是通过来自客户端的发布消息和来自服务器的 API 密钥注册域,并在站点更改时定期生成静态站点,但感谢所有建议!
【问题讨论】:
-
从您的问题看来,您似乎已经知道基本答案 - 使用
req.headers.host在不同虚拟主机的不同路由链之间做出决定 - 那么您是否需要一种内置的方式来做到这一点?还是一个抽象细节的库? -
内置会更好,节点很棒,因为您可以自己滚动,但我更喜欢主动构建自己的东西
-
有this,但它不是一个非常活跃的项目。否则node-http-proxy,它更活跃,但可能比你需要的更多。
标签: node.js