部署vue+Springboot前后端分离项目的步骤实现


Posted in Javascript onMay 31, 2020

单页应用

vue经常被用来开发单页应用(SinglePage Web Application,SPA),什么叫做单页应用呢,也就是只有一张web页面的应用,单页应用的跳转只需要刷新局部资源,大大加快的了我们页面的响应速度

前端页面打包

打开vue工程,在项目根目录下创建一个配置文件:vue.config.js,然后在里面写入以下内容:

module.exports = {
  assetsDir: 'static', // 静态资源保存路径
  outputDir: 'dist', // 打包后生成的文件夹
  lintOnSave: false,
  productionSourceMap: false, // 取消错误日志
  runtimeCompiler: true, // 实时编译
  chainWebpack: () => { }
  },
  devServer: { // vue工程服务配置
    open: true,
    proxy: { // 代理配置,将请求转发到后台的接口
      '/api': {
        target: 'http://www.ccocc.co',
        changeOrigin: true, // 开启跨域
        ws: true,
        pathRewrite: {
          '^/api': '' // 重写路径
        }
      }
    }
  }
}

然后在控制台中输入命令,npm run build

等待webpack为我们打包vue工程

部署vue+Springboot前后端分离项目的步骤实现

打包完成后会在根目录下生成我们刚刚指定的文件夹:dist

部署vue+Springboot前后端分离项目的步骤实现

打开文件夹,目录是这样的:

css保存我们书写的css代码,js保存我们书写的js代码,整个工程浓缩为一个index.html页面,何为单页,这就是单页。

部署vue+Springboot前后端分离项目的步骤实现

前端页面部署

把打包好的dist文件夹上传到服务器,随便选一个位置:

部署vue+Springboot前后端分离项目的步骤实现

然后打开nginx的配置文件,写入以下配置:

server {
    listen  80; # nginx的默认端口
    server_name www.ccocc.co; # 你的域名
		
		# 关闭默认的logo
    location = /favicon.ico{ 
    log_not_found off;
    access_log off;

}
		# 配置后端的接口,将访问域名/api的路径代理给我们后端的接口
    location /api{
    proxy_pass http://127.0.0.1:9786; # 本地加后端项目的端口号
}
		# 重写nginx默认欢迎页面
    location /{
    root /root/zcj/data/dist; # dist文件的绝对路径,因为登陆到服务器上的用户都是root,而root权限用户的根目录都是/root
    index index.html index.htm; # 文件名称,格式
    try_files $uri $uri/ /index.html; # 重定向
} 

}

后端项目部署

在上面我们都把配置文件写好了,所以我们只要直接打包工程以及上传到服务器再启动就行了。

在命令行输入命令:
在后台运行我们的springboot项目,并且输出日志到指定的日志文件

nohup java -jar fatNerdTimeTrack.jar >myfatLog.log 2>&1 &

然后去云服务器的控制台,将后端端口的安全组打开。

部署vue+Springboot前后端分离项目的步骤实现

到这。我们整个前后端分离的项目就部署成功了。

到此这篇关于部署vue+Springboot前后端分离项目的步骤实现的文章就介绍到这了,更多相关vue+Springboot前后端分离内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Javascript 相关文章推荐
javascript 嵌套的函数(作用域链)
Mar 15 Javascript
ECMAScript6新增值比较函数Object.is
Jun 12 Javascript
jQuery-1.9.1源码分析系列(十)事件系统之事件包装
Nov 20 Javascript
动态创建按钮的JavaScript代码
Jan 29 Javascript
Node.js重新刷新session过期时间的方法
Feb 04 Javascript
JS简单获取当前年月日星期的方法示例
Feb 07 Javascript
JS实现二叉查找树的建立以及一些遍历方法实现
Apr 17 Javascript
Vue.js tab实现选项卡切换
May 16 Javascript
EL表达式截取字符串的函数说明
Sep 22 Javascript
Node.js实现用户评论社区功能(体验前后端开发的乐趣)
May 09 Javascript
laypage.js分页插件使用方法详解
Jul 27 Javascript
vue项目,代码提交至码云,iconfont的用法说明
Jul 30 Javascript
JQuery获得内容和属性方法解析
May 30 #jQuery
JavaScript Window浏览器对象模型原理解析
May 30 #Javascript
基于canvasJS在PHP中制作动态图表
May 30 #Javascript
jQuery实现视频展示效果
May 30 #jQuery
vue实现购物车加减
May 30 #Javascript
基于vue和bootstrap实现简单留言板功能
May 30 #Javascript
JS常见内存泄漏及解决方案解析
May 30 #Javascript
You might like
一个分页的论坛
2006/10/09 PHP
探讨:使用XMLSerialize 序列化与反序列化
2013/06/08 PHP
PHP常用函数和常见疑难问题解答
2014/03/05 PHP
PHP查询大量数据内存耗尽问题的解决方法
2016/10/28 PHP
PHP实现对xml进行简单的增删改查(CRUD)操作示例
2017/05/19 PHP
Javascript日期对象的dateAdd与dateDiff方法
2008/11/18 Javascript
利用js正则表达式验证手机号,email地址,邮政编码
2014/01/23 Javascript
将字符串中由空格隔开的每个单词首字母大写
2014/04/06 Javascript
总结JavaScript三种数据存储方式之间的区别
2016/05/03 Javascript
js不间断滚动的简单实现
2016/06/03 Javascript
利用fecha进行JS日期处理
2016/11/21 Javascript
快速入门Vue
2016/12/19 Javascript
AngularJS实现动态添加Option的方法
2017/05/17 Javascript
JS原生带小白点轮播图实例讲解
2017/07/22 Javascript
vue.js简单配置axios的方法详解
2017/12/13 Javascript
vue-cli 引入jQuery,Bootstrap,popper的方法
2018/09/03 jQuery
详解如何为你的angular app构建一个第三方库
2018/12/07 Javascript
extract-text-webpack-plugin用法详解
2019/02/14 Javascript
[02:43]DOTA2英雄基础教程 圣堂刺客
2013/12/09 DOTA
浅析Python的web.py框架中url的设定方法
2016/07/11 Python
使用Python机器学习降低静态日志噪声
2018/09/29 Python
Python线程障碍对象Barrier原理详解
2019/12/02 Python
python缩进长度是否统一
2020/08/02 Python
外语专业毕业生自我评价分享
2013/10/05 职场文书
幼儿园数学教学反思
2014/02/02 职场文书
小学毕业感言50字
2014/02/16 职场文书
党校培训自我鉴定范文
2014/04/10 职场文书
企业宣传标语
2014/06/09 职场文书
纺织工程专业推荐信
2014/09/08 职场文书
2014年设计师工作总结
2014/11/25 职场文书
公司优秀员工推荐信
2015/03/24 职场文书
人事行政助理岗位职责
2015/04/11 职场文书
追悼会悼词大全
2015/06/23 职场文书
2015年高校保卫处工作总结
2015/07/23 职场文书
小学英语教师2015年度个人工作总结
2015/10/14 职场文书
Python使用psutil库对系统数据进行采集监控的方法
2021/08/23 Python