如何在网络面板中部署 node.js 应用程序?

我在 node.js 中开发了我的应用程序,并在我的服务器上安装了网络面板。我已经看到很多关于如何在cyberpanel中部署节点应用程序的示例,但是我对如何从浏览器中查看它有疑问。

到目前为止,我在 vHost 中有以下配置:

context / {
    type                    appserver
    location                /FOLDER/FOLDER/PROJECT_FOLDER/dist
    binPath                 /usr/bin/node
    startupFile             index.js
    appType                 node
    maxConns                100
}

当我通过控制台运行它时,我的应用程序在端口 3000 上完美运行,但我需要使用cyberpanel 在端口 80 上列出它。

有谁知道怎么做?

stack overflow How to deploy node.js application in cyberpanel?
原文答案

答案:

作者头像

看我要回答点对点的问题

首先,cyberpanel 默认只将 app.js 文件作为其核心文件来运行应用程序。其次,如何更改默认文件指向?

    `  context / {   type                    appserver    startupFile             index.js // **NAME OF YOUR STARTUP FILE**   location                /home/PROJECT_FOLDER/public_html/dist    binPath                 /usr/bin/node   appType                 node    appserverEnv            1   maxConns                100    accessControl  {     allow                 *   }    rewrite  {    }   ad              ` 

location /FOLDER/FOLDER/PROJECT_FOLDER/dist 注意:- 事情,我想提一下这个位置参数,这是你的启动文件的位置,你可以通过文件管理器得到它,因为你不能运行打字稿代码直接在这里,您必须使用 tsc 命令将其转换为 javascript,并使用 vconfig 文件中的位置参数进一步目标 dist 文件夹

现在下一个问题是如何在控制台之外运行应用程序?

1.创建一个网站来部署项目,使用下面的链接作为参考 click here

  1. 为网站签发 SSL - link for reference
    3.这是我的部署文件夹结构,只需将所有文件压缩并上传到网络面板的文件管理器中,然后提取您的文件。你可以看到,我有包含所有 javascript 文件的 dist 文件夹,还有 index.js,主启动文件。

    folder structure

  2. 单击文件管理器上的修复权限。

  3. 进入 Web 终端并安装node模块。如何 ?在网络终端上:- 键入 cd .. 并按 Enter。在那里你必须从目录中找到你的项目,你可以使用 ls 命令来获取文件列表和文件夹结构。我的目录是(使用 cd .. 之后):- cd home/FOLDERNAME/public_html 最后通过终端运行你的项目,检查它的工作。

6.配置你的vhost配置文件,下面是参考图片

enter image description here

6.你必须在vhost config中添加的文件,我在上面也提供了你。

  1. 如果您的域名设置正确,您可以在您的域名上查看 api,否则您可以点击网络面板上的预览按钮

注意: - 始终首先在终端中运行代码以检查其工作。