手把手教你部署的node前后端程序
前言
这篇文章将手把手教你使用宝塔面板部署自己的node前后端服务。至于为什么用宝塔,不敲一行命令实现前后端部署,相对于他原生部署方式,比如Nginx、Apache、Docker简单省事,对前端使用者更友好。
实验环境
云服务器:ubuntu18.4
PC:windows10
宝塔部署node后端服务
宝塔工具安装
pc上安装堡塔远程工具,ssh连上服务器。其他ssh工具也可以,比如putty、xshell等,
运行堡塔面板安装命令wget -O install.sh http://download.bt.cn/install/install-ubuntu_6.0.sh && sudo bash install.sh ed8484bec
如果是其他linux版本系统安装命令则不同:https://www.bt.cn/new/download.html,在这里找
安装完出现:
外网面板地址: http://47.113.185.74:12482/95ea64dd
内网面板地址: http://172.19.143.18:12482/95ea64dd
username:ysipxkuw
password:249605086229
忘记username和password,则执行
sudo /etc/init.d/bt default或者bt default显示地址和账号密码
若无法访问面板,请检查自己云服务器的防火墙/安全组是否有放行面板[12482]端口
部署node后端
- 进入面板它会提示你安装一整套软件,直接按照推荐安装即可, 
- 再去软件商店安装Node.js版本管理器 - Node.js版本管理器 是node进程管理工具,可以利用它来简化很多node应用管理的繁琐任务,如性能监控、自动重启、负载均衡等,而且使用非常简单方便。 
- 在文件上传写好的node后端程序  
 这是我的node后端程序,实现接受post,响应图片的url和序号index。我这里使用了express模块和cors模块,需要在服务器中安装这个模块。- 可以选择局部安装必须安装到后端服务的文件夹内,全局安装 - npm install -g express- // 1. 导入 express 
 const express = require('express')
 // 2. 创建 web 服务器
 const app = express()
 const cors = require('cors') //跨域
 app.use(cors())
 app.use(express.json())
 app.use(express.urlencoded({ extended: false })) //解析表单中间件配置
 app.post('/image', (req, res) => {
 let imgs = ['https://gitee.com/mei_long_chen/img_bed/raw/master/images/1.jpg','https://gitee.com/mei_long_chen/img_bed/raw/master/images/2.jpg','https://gitee.com/mei_long_chen/img_bed/raw/master/images/3.jpg','https://gitee.com/mei_long_chen/img_bed/raw/master/images/4.jpg','https://gitee.com/mei_long_chen/img_bed/raw/master/images/5.jpg']
 let ids = [1,2,3,4,5]
 res.send({state:1,data:{id:ids[req.body.index],img:imgs[req.body.index]}})
 })
 // 3. 启动 web 服务器
 app.listen(8887, () => {
 console.log('express server running at http://127.0.0.1')
 })- 局部安装node后端模块 
 这里进入terminal 
 如果使用webpack管理的项目,直接执行npm i 即可- npm i express cors
 安装完成刷新目录会发现这都些文件 
- 找到刚才的服务器目录,上传node文件或者项目,添加项目  
- 打开8887防火墙端口  
前端
测试后端
前端程序注意修改请求IP地址和端口,这里的前端程序改另存为client.html文件使用浏览器打开,并在同级目录加入axios.js

| <!DOCTYPE html> | 
通过上满的方式打开client.html可在浏览器显示如下效果

若测试失败
检查IP和端口是否连通
tcping可以ping ip+端口
进去后,直接下载tcping.exe那个文件就行。然后把下载好的工具放到电脑的C盘>Vindows>:System32下面就行。
然后我们直接重新打开CMD窗口,输入命令输入完回车就可以查看这个IP的端口是否是通着的。
比如:tcping10.20.66378090
部署前端服务
1.打包项目  yarn build
2.全局安装serve包。yarn global add serve
3.到打包的目录下terminal执行serve即可开启服务
或者直接再上层目录下执行 serve build
总结
- 一定要把开宝塔面板和云服务器防火墙都关闭
- 后端的端口号与前端保持一致
*有任何疑问和想法,欢迎在评论区与我交流。*











