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

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

相关推荐
sorryhc6 分钟前
【AI解读源码系列】ant design mobile——Avatar头像
前端·javascript·react.js
Mintopia15 分钟前
🎭 一场浏览器里的文艺复兴
前端·javascript·aigc
Mintopia15 分钟前
🎬《Next 全栈 CRUD 的百老汇》
前端·后端·next.js
AryaNimbus30 分钟前
你不知道的Cursor系列:如何使用Cursor同时开发多项目?
前端·ai编程·cursor
国家不保护废物34 分钟前
Function Call与MCP:给AI插上连接现实的翅膀
前端·aigc·openai
500佰34 分钟前
阿里Qoder AI 新开发工具,长期记忆、Wiki和Quest模式是它的独有特性
前端
Juchecar35 分钟前
Vue3 Class 和 Style 绑定详解
前端·vue.js
coding随想36 分钟前
揭秘DOM键盘事件:从基础到高级技巧全解析!
前端
xianxin_38 分钟前
CSS Position(定位)
前端
xianxin_39 分钟前
CSS Float(浮动)
前端