node.js 可以在任何托管服务提供商中运行吗?

Posted

技术标签:

【中文标题】node.js 可以在任何托管服务提供商中运行吗?【英文标题】:Can node.js run in any hosting provider? 【发布时间】:2013-05-09 09:21:22 【问题描述】:

抱歉这个新手问题。 node.js 可以在 Fastdomain 等任何托管服务提供商中运行吗?我们在 fastdomain 中有一个帐户,我们可以在其中上传用 php 制作的网站。我在我们的主机中允许 SSH 并尝试安装 node.js,但它没有工作。我一直在搜索互联网,但没有确切的答案。

【问题讨论】:

【参考方案1】:

不,您不能在每个托管服务提供商上运行 Node.js。您需要某些基本功能。如果您的托管服务提供商不直接支持 Node.js(就像 Heroku 一样),那么您需要能够在您的服务器中安装外壳。您还需要使用 C 编译器来构建 Node.js 或为您的系统安装包的能力。

安装 Node.js 后,您需要 root 访问权限才能在端口 80 上运行它。如果您的提供商提供反向代理服务,您可以绕过这个问题。

您可以加入的事实是一个好的开始。在 Fastdomain 上可能是可能的,但要确保您应该联系 Fastdomain 支持。每个托管服务提供商都不同,如果您有共享托管,那么答案很可能是否定的。您通常需要专门的主机来运行 Node.js。

【讨论】:

您不需要 root 访问权限。您仍然可以通过另一台前端服务器进行代理。 这是否意味着我们不能在同一个主机的同一个项目中使用 PHP 和 NODE.JS?如果可以,如何? @TheHippo 对,我不是说你需要 root 权限才能安装 Node,只是你需要它在 80 端口上运行。 @Daniel 你可以结合 node.js 和 PHP。您需要 a) 托管服务提供商如何托管 node.js 和 PHP,或者 b) 一个“自己的”服务器,您可以轻松配置它来托管两者。【参考方案2】:

不,Node 不能在任何托管服务提供商上运行,但是您可以在 PAAS 站点中将 Nodejs 项目部署为 Heroku 和 Linode,它们为您提供了一个平台来部署您的应用程序或在云托管服务提供商上。

PAAS 模型让提供商负责基础架构以及配置操作系统和整体基础架构,您只需担心开发和部署。

另一方面,Nodejs 可以部署在任何云主机上,一旦您可以访问虚拟或专用服务器,您就可以安装 nodejs 和依赖项以开始提供您的应用程序,在这种情况下,您负责安装 Nodejs、数据库、网络服务器(如果你不想使用 Node 的 Http 服务器)。

云托管通常更昂贵,但提供对基础设施的更多控制,从开发人员的角度来看,PAAS 通常更易于使用,一旦仅用于开发和部署(有时配置类似域和其他帐户设置)。

【讨论】:

以上是关于node.js 可以在任何托管服务提供商中运行吗?的主要内容,如果未能解决你的问题,请参考以下文章

如何在共享主机中托管 Node.Js 应用程序 [关闭]

为啥 node.js 不能在共享主机上运行? [关闭]

我是否需要一台不同的服务器来运行node.js

React 前端,Node JS 后端托管

为 node.js 重新加载。有可能吗? [复制]

使用自己的服务器 node.js 托管 Firebase