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)
  }
})

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

相关推荐
我叫蒙奇几秒前
JS中的隐式类型转换
前端
他们叫我秃子2 分钟前
前端开发转 Go 全栈(四):代码写在前面,却要最后执行?我终于搞懂了 defer
前端·后端·go
生戎马 平安京策22 分钟前
只学一点点:我的技术学习策略
前端·javascript·react.js
大鹏说大话35 分钟前
HTML5 地理定位 Geolocation:获取用户位置的“红线”与最佳实践
前端·html·html5
Csvn1 小时前
content-visibility: auto —— 让浏览器跳过离屏渲染的性能黑科技
前端
小鹰信息技术服务部1 小时前
Edge安装包MicrosoftEdgeSetup.exe无法运行,点击没反应
前端·edge
webkubor2 小时前
一次前端生产白屏复盘:旧 HTML、Hash 资源和 MIME type text/html
前端·前端工程化
咩咩啃树皮2 小时前
第63篇【终极整合巨作】从零手写原生中后台管理系统|整合62篇全部前端知识点|从头到尾完整架构+全功能逻辑
前端·架构
Highcharts3 小时前
用Highcharts如何动态向一个序列添加点-示列讲解
前端
weixin_431600443 小时前
做 Agent 会用到的 Node API(4):取消与 AbortController
前端·学习·ai·agent·ai编程