vue 实现打包并同时上传至服务器端

将 publish_script 及以下文件 upload.server.js 添加到 主文件下,与 src 同级别

具体操作步骤:

1、安装 npm install scp2

2、将下面两条命令加入至 package.json 的 scripts 中

复制代码
"upload": "node publish_script/upload.server.js",
"publish": "npm run build && npm run upload"

3、需后端提供:

(1)修改 path后的服务器站点目录名称为 lucky,即 /etc/nginx/wwwroot/lucky

(3)修改 host: 47.109.67.254

4、修改 vue.config.js 中,publicPath的值,都改成 "/" 才对应的上

复制代码
module.exports = {
  publicPath: process.env.NODE_ENV === 'production' ? '/' : '/'
};

5、使用 npm run publish 发布并部署至服务器

upload.server.js 文件

复制代码
// 1.安装scp2  执行命令  npm install scp2
// 2.将下面两条命令加入至 package.json 的 scripts 中
// "upload": "node publish_script/upload.server.js",
// "publish": "npm run build && npm run upload"
// 3. 使用 npm run publish 发布并部署至服务器
var serverConfig = {
  publishPath: './dist/', // 本地需要发布的文件夹
  host: '47.109.67.254', // 远程服务器Ip
  username: 'marking', // ssh 用户名称
  password: '][poiu+_)(*&', // ssh 用户密码
  path: '/etc/nginx/wwwroot/lucky' // 远程服务器站点目录
}

// 引入scp2模块
var client = require('scp2')
// var random = Math.random()
client.scp(serverConfig.publishPath, {
  'host': serverConfig.host,
  'username': serverConfig.username,
  'password': serverConfig.password,
  'port': '10022', // 默认SSH端口
  'path': serverConfig.path
}, function(err) {
  if (!err) {
    console.log('npm run publish: scp2工具上传完毕,远端服务路径:' + serverConfig.path)
  } else {
    console.log('npm run publish: 上传失败!!,原因:', err)
  }
})

希望我的愚见能够帮助你哦~,若有不足之处,还望指出,你们有更好的解决方法,欢迎大家在评论区下方留言支持,大家一起相互学习参考呀~

相关推荐
万少5 小时前
HarmonyOS 开发必会 5 种 Builder 详解
前端·harmonyos
橙序员小站7 小时前
Agent Skill 是什么?一文讲透 Agent Skill 的设计与实现
前端·后端
炫饭第一名9 小时前
速通Canvas指北🦮——基础入门篇
前端·javascript·程序员
王晓枫10 小时前
flutter接入三方库运行报错:Error running pod install
前端·flutter
符方昊10 小时前
React 19 对比 React 16 新特性解析
前端·react.js
ssshooter10 小时前
又被 Safari 差异坑了:textContent 拿到的值居然没换行?
前端
曲折10 小时前
Cesium-气象要素PNG色斑图叠加
前端·cesium
Forever7_10 小时前
Electron 淘汰!新的桌面端框架 更强大、更轻量化
前端·vue.js
不会敲代码110 小时前
前端组件化样式隔离实战:React CSS Modules、styled-components 与 Vue scoped 对比
css·vue.js·react.js
Angelial10 小时前
Vue3 嵌套路由 KeepAlive:动态缓存与反向配置方案
前端·vue.js