宝塔面板快速部署 Node.js + Express 后端,一步到位!

在服务器上部署 Node.js 项目,很多小伙伴可能觉得麻烦,尤其是要手动配置环境、进程管理、反向代理等。但如果你用的是 宝塔面板 ,整个流程就会简单很多!本文将手把手教你如何在 宝塔面板 上部署 Node.js 项目,让你的应用顺利跑起来。

步骤 1:安装 Node.js

首先,我们需要在服务器上安装 Node.jsnpm

  1. 登录宝塔面板,进入 软件商店
  2. 搜索 Node.js ,点击安装,选择最新的 LTS 版本(长期支持版)。
  3. 安装完成后,Node.js 和 npm 就已经配置好了,不需要额外操作。

步骤 2:上传项目到服务器

你可以选择 FTP、SFTP ,或者直接用 宝塔面板的文件管理器 上传代码到服务器。

  • 打开 宝塔面板 → 文件管理 ,找到合适的目录(比如 /www/wwwroot/your-project)。
  • 上传你的项目文件,并解压(如果是压缩包的话)。

步骤 3:安装项目依赖

项目上传完了,接下来要安装依赖。

  1. 打开 终端(SSH 连接或宝塔自带的终端)。

  2. 进入项目目录:

    bash 复制代码
    bash
    复制编辑
    cd /www/wwwroot/your-project
  3. 运行以下命令安装依赖:

    复制代码
    bash
    复制编辑
    npm install

如果项目需要环境变量 ,别忘了在项目目录下创建 .env 文件,并配置相关参数。

步骤 4:配置 Nginx 反向代理

Node.js 服务器默认监听的是某个端口(如 3000),但为了让它能通过域名访问,我们需要用 Nginx 反向代理。

  1. 打开 宝塔面板 → 网站 → 你的网站 → 反向代理

  2. 添加一个反向代理规则,目标地址填:

    arduino 复制代码
    cpp
    复制编辑
    http://127.0.0.1:3000
  3. 保存并应用配置。

如果你用的是 Apache ,可以在 Apache 配置 里添加类似的反向代理规则。

步骤 5:使用 PM2 进程管理

为了让 Node.js 项目稳定运行(并在服务器重启后自动恢复),推荐使用 PM2

  1. 先安装 PM2:

    复制代码
    bash
    复制编辑
    npm install -g pm2
  2. 进入项目目录,使用 PM2 启动项目:

    sql 复制代码
    bash
    复制编辑
    pm2 start app.js --name your-project

(如果你的启动文件不是 app.js,改成 server.jsindex.js 等。)

  1. 让 PM2 开机自启:

    复制代码
    bash
    复制编辑
    pm2 startup
    pm2 save

步骤 6:开放防火墙端口

如果服务器的防火墙有严格限制,你需要手动开放端口。

  • Nginx 反向代理的端口 (一般是 80443)必须开放。
  • 如果你直接访问 Node.js 端口(如 3000),那这个端口也要开放。

宝塔面板 → 安全 里,检查防火墙规则,确保这些端口是允许访问的。

步骤 7:测试和访问

现在,Node.js 项目已经部署好了!你可以在浏览器里测试:

  • 通过域名访问http://your-domain.com
  • 直接访问 IP+端口 (如果没配反向代理):http://your-server-ip:3000

如果一切顺利,你的项目应该可以正常运行了!🎉

相关推荐
zengyuhan50311 分钟前
Windows BLE 开发指南(Rust windows-rs)
前端·rust
醉方休14 分钟前
Webpack loader 的执行机制
前端·webpack·rust
前端老宋Running23 分钟前
一次从“卡顿地狱”到“丝般顺滑”的 React 搜索优化实战
前端·react.js·掘金日报
隔壁的大叔23 分钟前
如何自己构建一个Markdown增量渲染器
前端·javascript
用户44455436542625 分钟前
Android的自定义View
前端
WILLF26 分钟前
HTML iframe 标签
前端·javascript
用户6389822458927 分钟前
使用Hutool的ExcelWriter导出复杂模板,支持下拉选项级联筛选
后端
程序员鱼皮28 分钟前
10个免费的网站分析工具,竟然比付费的更香?
后端·程序员·数据分析
码一行36 分钟前
Eino AI 实战: Eino 的文档加载与解析
后端·go
码一行36 分钟前
Eino AI 实战:DuckDuckGo 搜索工具 V1 与 V2
后端·go