gpt4 book ai didi

node.js - 将 Next.js 部署到 Apache 服务器

转载 作者:行者123 更新时间:2023-12-04 14:17:10 29 4
gpt4 key购买 nike

我一直在本地开发 Next.js 网站,现在想在我的 Apache 服务器上设置它(使用 cPanel)。但是,我对 Next.js 和 Node 应用程序很陌生,不太确定如何去做。

有没有人成功地做到了这一点?你能列出所需的步骤以及服务器上应该有哪些文件吗?

另外,这可以在子域上完成吗?

谢谢!

最佳答案

首先从一些明确的术语开始,以便我们在同一页面上,当人们说“服务器”时,有两到三个截然不同的意思:

  • 服务器计算机是连接到 Internet 的计算机,您打算使用它为 Internet 上的人们提供服务。
  • 服务器程序是您在服务器机器上运行的一些软件。服务器程序的工作是实际计算对各种请求的响应。
  • 服务器即服务是由公司提供的 Web 应用程序,用于存储您的代码,然后根据需要使用正确的服务器程序将其放到服务器机器上。

  • 当我们在这里时,让我们也定义:
  • 编程语言是您的网站所用的语言。有些网站没有语言(并且只是旨在直接返回给用户的原始 HTML/CSS 文件)。但是,许多站点都有一些应该在服务器上运行的代码,然后该代码的结果应该返回给用户。

  • 就您而言,您有一个 机器除了运行 之外,我们不知道其情况程序 Apache(或者可能是“ Apache HTTP Server”)。 Apache HTTP 服务器非常古老且经过验证,非常擅长将原始文件返回给用户。它还可以运行一些 编程语言像 PHP 并返回结果。

    然而,Next.JS 是建立在 之上的。编程语言 Apache 无法运行的 Javascript。 Next.JS 反而希望它的服务器程序是 Node .

    所以这里的问题基本上是你有一个锤子,但只有螺丝。你不能用你拥有的工具Apache来解决你需要解决的问题,运行Node代码并返回结果。要解决此问题,您有两种选择:

    首先,您可以找到访问 的方法。服务器机器当前正在运行 Apache 并告诉它,在它启动时运行指向 Next.JS 代码的 Node。这可能是不可能的,这取决于谁拥有这台机器以及他们如何设置它。

    其次,可能更容易,是放弃这个 机器而是使用 服务器即服务 . Heroku、AWS 和 Netlify 都支持 Next.JS 并提供免费套餐。不过,最简单的解决方案可能是将其部署在 Vercel 上。 ,这是一个服务器即服务,由制作 Next.JS 的同一团队运行,并且有一个非常慷慨的免费层供您开始使用。

    不过,好消息是 next.js 确实完全支持从子域托管。

    关于node.js - 将 Next.js 部署到 Apache 服务器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59095604/

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