gpt4 book ai didi

node.js - NodeJS 使用两个 IP 地址和相同的端口 443 在单个服务器上托管两个应用程序

转载 作者:行者123 更新时间:2023-12-04 22:39:28 25 4
gpt4 key购买 nike

我有两个具有不同 SSL 证书的不同 nodejs + expressjs 应用程序。我为我的第二个应用程序获得了另一个 IP 地址。我只启用了一个端口,即 443。当我运行第一个应用程序时,它运行成功,但是当我尝试运行第二个应用程序时,它会出现端口已在使用错误。
请注意,我在不同的 IP 地址上运行这两个应用程序。

最佳答案

这与您使用的接口(interface)/IP 地址的数量无关。机器上的一个端口只能使用一次。在这种情况下,您的第一个应用程序已经专门监听它。

最好的方法是使用 Web 服务器或反向代理(例如 HAProxy、nginx、Apache)监听所有接口(interface)来处理端口 443 上的传入请求,并根据 IP 地址将流量转发到您的应用程序 - 甚至更好(子)域名——请求的。然后,您可以在不需要 root 权限绑定(bind)的单独端口 > 1024 上运行这两个应用程序(这也是一个安全问题):

例子:

Request to IP 10.1.10.1 →  +---------------------+  → Forwarded to app 1:80441
| Reverse Proxy:443 |
Request to IP 10.1.10.2 → +---------------------+ → Forwarded to app 2:80442

关于node.js - NodeJS 使用两个 IP 地址和相同的端口 443 在单个服务器上托管两个应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61404877/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com