在服务器上部署 Node.js 项目,很多小伙伴可能觉得麻烦,尤其是要手动配置环境、进程管理、反向代理等。但如果你用的是 宝塔面板 ,整个流程就会简单很多!本文将手把手教你如何在 宝塔面板 上部署 Node.js 项目,让你的应用顺利跑起来。
步骤 1:安装 Node.js
首先,我们需要在服务器上安装 Node.js 和 npm。
- 登录宝塔面板,进入 软件商店。
- 搜索 Node.js ,点击安装,选择最新的 LTS 版本(长期支持版)。
- 安装完成后,Node.js 和 npm 就已经配置好了,不需要额外操作。
步骤 2:上传项目到服务器
你可以选择 FTP、SFTP ,或者直接用 宝塔面板的文件管理器 上传代码到服务器。
- 打开 宝塔面板 → 文件管理 ,找到合适的目录(比如
/www/wwwroot/your-project
)。 - 上传你的项目文件,并解压(如果是压缩包的话)。
步骤 3:安装项目依赖
项目上传完了,接下来要安装依赖。
-
打开 终端(SSH 连接或宝塔自带的终端)。
-
进入项目目录:
bashbash 复制编辑 cd /www/wwwroot/your-project
-
运行以下命令安装依赖:
bash 复制编辑 npm install
如果项目需要环境变量 ,别忘了在项目目录下创建 .env
文件,并配置相关参数。
步骤 4:配置 Nginx 反向代理
Node.js 服务器默认监听的是某个端口(如 3000
),但为了让它能通过域名访问,我们需要用 Nginx 反向代理。
-
打开 宝塔面板 → 网站 → 你的网站 → 反向代理。
-
添加一个反向代理规则,目标地址填:
arduinocpp 复制编辑 http://127.0.0.1:3000
-
保存并应用配置。
如果你用的是 Apache ,可以在 Apache 配置 里添加类似的反向代理规则。
步骤 5:使用 PM2 进程管理
为了让 Node.js 项目稳定运行(并在服务器重启后自动恢复),推荐使用 PM2。
-
先安装 PM2:
bash 复制编辑 npm install -g pm2
-
进入项目目录,使用 PM2 启动项目:
sqlbash 复制编辑 pm2 start app.js --name your-project
(如果你的启动文件不是 app.js
,改成 server.js
或 index.js
等。)
-
让 PM2 开机自启:
bash 复制编辑 pm2 startup pm2 save
步骤 6:开放防火墙端口
如果服务器的防火墙有严格限制,你需要手动开放端口。
- Nginx 反向代理的端口 (一般是
80
或443
)必须开放。 - 如果你直接访问 Node.js 端口(如
3000
),那这个端口也要开放。
在 宝塔面板 → 安全 里,检查防火墙规则,确保这些端口是允许访问的。
步骤 7:测试和访问
现在,Node.js 项目已经部署好了!你可以在浏览器里测试:
- 通过域名访问 :
http://your-domain.com
- 直接访问 IP+端口 (如果没配反向代理):
http://your-server-ip:3000
如果一切顺利,你的项目应该可以正常运行了!🎉