前言:一般来说我们都喜欢我们的代码看起来简洁美观而且性能也能大大提升,那这个时候我们就需要进行前后端分离,为什么俺会这样说呢,因为俺最近就要搞这个(ヽミ ´∀`ミノ<)。


简介:项目采用的是webpack+vue做的,后端用的node.js来实现,服务器nginx(本文主要阐述:如何在服务器上进行node.js的配置以及启动该服务
在这里插入图片描述
项目部署的话请移步至:项目部署至服务器 可以去看看哦…

一.必备的:


既然是node.js那么必不可少的就是nodenpm,但是一般下载node的时候npm会作为依赖也会同时进行下载,当然还有我们启动该服务的pm2,那么如何安装呢?

  1. 安装node

sudo apt-get install nodejs

但是你会发现这样下载下来的node版本可能会比较低,我们可以用以下方式进行解决:

sudo npm cache clean -f
sudo npm install -g n
sudo n stable  //升级为最新稳定版本的node.js

我们可以使用:node -v来查看node的版本,npm -v来查看npm的版本

  1. pm2的安装
#npm是node.js命令,自行百度安装并配置源仓库镜像等
#使用npm命令安装pm2
npm install -g pm2

pm2常用的命令:

#首次启动命令
pm2 start js文件/json文件
#如
pm2 start start-app.json
#查看PM2管理的程序列表
pm2 list
#重启命令
pm2 restart js文件/json文件/指定的name/id
#停止命令
pm2 stop 指定的name/id
#删除PM2管理的程序
pm2 delete 指定的id/name
#其他高级操作如启动文件env配置,负载均衡启动,性能监控等请参考官方文档

在这里插入图片描述

二.node.js文件:

各种环境已经准备完毕,那么接下来我们就需要上传我们的服务了,一般node.js文件我们命名main.js(当然这是俺个人的习惯)

const express = require('express')
const app = express()
//设置跨域访问
app.all('*', function (req, res, next) {
  res.header("Access-Control-Allow-Origin", "*");
  res.header("Access-Control-Allow-Headers", "X-Requested-With");
  res.header("Access-Control-Allow-Methods", "PUT,POST,GET,DELETE,OPTIONS");
  res.header("X-Powered-By", ' 3.2.1')
  res.header("Content-Type", "application/json;charset=utf-8");
  next();
})
// 监测服务的开启(5000为服务的端口号)
app.listen(5000, '0.0.0.0', function (res) {
  console.log('Server start on http://0.0.0.0:5000');
})

我们可以在某一个目录下存放此文件,例如:
在这里插入图片描述

三.启动服务:


因为俺的服务目前是启动的所以就会有这样的错误:
在这里插入图片描述

[PM2][ERROR] Script already launched, add -f option to force re-execution
# 意思就是服务已经启动了

如果正常的应该是这样的结果:
在这里插入图片描述
这样的话就算成功了哦…
在这里插入图片描述

塑造自己过程很疼,但最终你能收获一个更好的自己

Logo

前往低代码交流专区

更多推荐