如何从我的电脑托管Node.Js服务器和PostgreSQL数据库?

时间:2016-10-09 09:19:28

标签: node.js postgresql web-hosting host shared-hosting

我想在我的计算机上托管我自己的服务器和数据库,我不想每月支付服务费用。 我开发了一个node.js应用程序,它使用postgresql数据库。我有一个带有角度应用程序的域,应用程序需要使用来自服务器的数据。

有人可以告诉我如何做到这一点以及哪种操作系统最好?

谢谢!

1 个答案:

答案 0 :(得分:0)

你必须为此工作做一些事情。

  1. 首先,您的Angular应用程序需要能够与您的家庭服务器连接,因此它需要一个可从外部访问的静态IP地址,一个带动态DNS的动态IP或VPN。
  2. 您的服务器需要正确支持CORS,以便您的Angular应用程序能够与之连接。它将发送服务器需要正确处理的OPTIONS请求。
  3. 确保您的服务器始终处于开启状态,互联网连接可靠,电源可靠,并且您的服务在重新启动时正常重新启动。
  4. 确保您的服务器始终是最新的安全补丁,配置正确,不使用任何不需要的软件和服务。
  5. 对于(1)你有很多选择,这取决于你是否有一个静态或动态的IP地址,是否可以从互联网等访问,你没有在答案中包含。

    对于(2),它取决于您在服务器端应用程序中使用的Node框架,而您未在问题中包含该框架。您需要使用一种方法来设置特定于您使用的框架的CORS。

    (3)在家庭环境中很难,但这很重要,因为在任何停机时间,您的用户将无法使用您的应用程序。

    (4)在家庭环境中至关重要,因为如果有人闯入您的服务器,他将可以访问您的家庭网络,这可能会导致进入数据中心的各种后果。

    另一种选择是使用像Digital Ocean这样便宜的VPS提供商,你可以每月5美元(或this link免费获得2个月)获得一台服务器,设置你自己的服务器可能不那么麻烦 - 您必须支付电费,管理硬件,监控连接等。

    如果您选择VPS,那么(1)我们照顾您 - 您可以从世界上获取您自己的静态IP地址,(3)完全照顾您,(4)相对容易做到和最大的问题是确保CORS能够正常工作 - 但是在这里你可以在与你的前端相同的域上托管你的API,然后你根本不需要担心CORS。

    如果您获得了VPS,那么您可以从同一台服务器托管您的前端Angular应用程序,这样它甚至不需要花费更多。