当前位置: 首页 > news >正文

阿里云CentOs中Vue项目的上线(node+express+pm2)

通过node创建web服务器

1. 创建node项目

  • 创建一个文件夹
  • 初始化包管理配置文件
npm init -y

2. 安装express, 通过express快速创建web服务器

  • 安装express
npm i express -S

3. 新建app.js入口文件,进行如下配置

const express = require('express') 
// 创建 web 服务器 
const app = express() 

// 托管静态资源 
app.use(express.static('./dist')) 

// 启动 web 服务器 ,端口号为80
app.listen(80, () => { 
 console.log('web server running at http://127.0.0.1') 
})

4. 将vue打包好的dist文件放入项目中

  • 目录如下:

在这里插入图片描述

开启gzip配置

  • 使用 gzip 可以减小文件体积,使传输速度更快
  • 配置如下:
    在这里插入图片描述
  // 安装相应包   
  npm install compression -S   
  // 导入包   
  const compression = require('compression');   
  // 启用中间件   
  app.use(compression());

app.js完整代码如下:

const compression = require('compression')
const express = require('express')
const app = express()

app.use(compression())
app.use(express.static('./dist'))

app.listen(80, () => {
	console.log('server is running ')
})

使用pm2管理应用

  • 在服务器中安装 pm2:npm i pm2 -g
  • 启动项目:pm2 start 脚本 --name 自定义名称
  • 查看运行项目:pm2 ls
  • 重启项目:pm2 restart 自定义名称
  • 停止项目:pm2 stop 自定义名称
  • 删除项目:pm2 delete 自定义名称
    在这里插入图片描述

相关文章:

  • iptables总结_02
  • uni-app中的分类页面(仿京东分类页面)(scroll-view的使用)
  • oracle select decode判断 ,sign使用例子
  • 快速入门vuex带案例说明(超详细易理解)
  • wifi信道1,6,11科普
  • uni-app中微信小程序端使用腾讯地图API实现定位服务(超详细教程)
  • CSS 3学习——transition 过渡
  • 关于React中DOM,虚拟DOM及diff算法的理解
  • 类型签名在Javascript中的探索
  • 快速入门,理解,使用 axios请求
  • 第二章 存储,2.1 永不停止的脚步——数据库优化之路(作者:佳毅)
  • CSS实现元素水平垂直居中的几种方式
  • 年末购机推荐,首选OPPO这两款中端旗舰王者
  • js中深浅拷贝的实现方式(含图解原理)
  • Java刷题知识点之File对象常用功能:获取文件名称、获取文件路径、获取文件大小、获取文件修改时间、创建与删除、判断、重命名、查看系统根目录、容量获取、获取某个目录下内容、过滤器...
  • (ckeditor+ckfinder用法)Jquery,js获取ckeditor值
  • 【前端学习】-粗谈选择器
  • seaborn 安装成功 + ImportError: DLL load failed: 找不到指定的模块 问题解决
  • 基于 Babel 的 npm 包最小化设置
  • 少走弯路,给Java 1~5 年程序员的建议
  • 深入体验bash on windows,在windows上搭建原生的linux开发环境,酷!
  • 微信小程序填坑清单
  • 微信支付JSAPI,实测!终极方案
  • 走向全栈之MongoDB的使用
  • CMake 入门1/5:基于阿里云 ECS搭建体验环境
  • ​3ds Max插件CG MAGIC图形板块为您提升线条效率!
  • ​七周四次课(5月9日)iptables filter表案例、iptables nat表应用
  • # Maven错误Error executing Maven
  • #define与typedef区别
  • #QT(TCP网络编程-服务端)
  • #我与Java虚拟机的故事#连载05:Java虚拟机的修炼之道
  • #我与Java虚拟机的故事#连载17:我的Java技术水平有了一个本质的提升
  • $().each和$.each的区别
  • (1) caustics\
  • (6)【Python/机器学习/深度学习】Machine-Learning模型与算法应用—使用Adaboost建模及工作环境下的数据分析整理
  • (HAL库版)freeRTOS移植STMF103
  • (翻译)Entity Framework技巧系列之七 - Tip 26 – 28
  • (九)c52学习之旅-定时器
  • (强烈推荐)移动端音视频从零到上手(上)
  • (求助)用傲游上csdn博客时标签栏和网址栏一直显示袁萌 的头像
  • (转) RFS+AutoItLibrary测试web对话框
  • (转载)Linux 多线程条件变量同步
  • ***详解账号泄露:全球约1亿用户已泄露
  • *上位机的定义
  • .java 指数平滑_转载:二次指数平滑法求预测值的Java代码
  • .NET CORE 第一节 创建基本的 asp.net core
  • .NET Core实战项目之CMS 第十二章 开发篇-Dapper封装CURD及仓储代码生成器实现
  • .NET 同步与异步 之 原子操作和自旋锁(Interlocked、SpinLock)(九)
  • .NET/C# 将一个命令行参数字符串转换为命令行参数数组 args
  • .NET/C# 使用 ConditionalWeakTable 附加字段(CLR 版本的附加属性,也可用用来当作弱引用字典 WeakDictionary)
  • .NET/C# 使用 SpanT 为字符串处理提升性能
  • .NET8.0 AOT 经验分享 FreeSql/FreeRedis/FreeScheduler 均已通过测试
  • .NetCore部署微服务(二)
  • .net打印*三角形
  • @Autowired和@Resource装配