gpt4 book ai didi

javascript - 在我的机器上托管 Node 应用程序

转载 作者:数据小太阳 更新时间:2023-10-29 04:30:51 25 4
gpt4 key购买 nike

所以我有一个可以通过 localhost:someportnumber 访问的 Node 应用程序。我如何仅使用我的机器而不是某种托管服务公开此应用程序(即对 interwebz 的其余部分,而不仅仅是我的本地网络)。机器是 macbook pro,不确定是否重要。

注意 - 这纯粹是为了理解,我不希望在我的笔记本电脑上永久托管一个玩具网络应用程序。

这是我的困惑 - 我的 node.js 应用程序是一个网络服务器,为什么我需要另一台服务器(即由 heroku、aws 等提供的服务器)来托管我的应用程序?我觉得我错过了什么......

最佳答案

假设这是一个家庭网络,那么您可能有某种路由器/防火墙将您的家庭网络连接到互联网。默认情况下,路由器会阻止所有传入的网络连接(出于安全原因)。

如果需要,您可以设置所谓的端口转发规则,告诉路由器您希望端口 80(这是浏览器的默认 http 端口)上的任何传入连接直接路由到您的 macbook pro 在您的家庭网络上。通常,您可以通过发现您的 macbook pro 在您的家庭网络上时的 IP 地址是什么来做到这一点,并且您可以为该 IP 地址设置端口转发规则。端口转发规则通常会通过某种基于 Web 的管理用户界面进行配置,您可以从 Web 浏览器使用该界面。您必须查看特定路由器的手册,才能了解如何最好地连接到它并进行配置。

除非您将 macbook pro 设置为具有静态 IP 地址,否则其 IP 地址将由路由器动态分配。它可能会在一段时间内保持不变,但会随着时间的推移而改变。

完成此操作后,您需要发现家庭网络连接的 IP 地址。这也可能是动态分配的,但也应该在一段时间内保持不变。如果您知道此 IP 地址,则互联网上的浏览器可以通过访问 URL http://xxx.yyy.zzz 连接到您的 Web 服务器,其中 xxx.yyy.zzz 是您在互联网上看到的家庭网络的 IP 地址。

如果您希望能够使用普通域名连接到它,例如 http://mysampledomain.com,那么您可以付费购买一些动态 DNS 服务来设置为您的动态 IP 地址注册一个域,但不建议长期使用。除了可能违反您的 ISP 的规则之外,它不是一个特别可扩展或强大的解决方案。从长远来看,转向托管服务提供商会更有意义。

Here's my confusion - my node.js application IS A WEBSERVER, why do I need another server (i.e. one provided by heroku, aws, etc) to host my app? I feel like I'm missing something...

您不需要另一个网络服务器。如果您要寻找托管服务提供商,您会使用擅长托管 node.js 服务器的托管服务提供商。使用这些类型的提供程序,可能不会有另一个 Web 服务器——您的 node.js 服务器将是唯一涉及的服务器。他们可能拥有用于使 Multi-Tenancy 环境正常工作的代理或负载平衡器,但除了确保按照正确的安装说明在他们的环境中正确启动和运行 node.js 服务器之外,你应该基本上不知道这些环境。

关于javascript - 在我的机器上托管 Node 应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35055859/

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