vue项目部署到nginx/tomcat服务器的实现


Posted in Javascript onAugust 26, 2019

开发完的vue项目,需要部署到Nginx/Tomcat服务器上运行,作为一个前端小白,刚接触vue不久,研究了一番,于是写下这篇文章,记录下来便于今后部署。

1.router(history)模式vue项目部署到nginx

1)修改router模式为history(默认为hash)

const router = new VueRouter({
 routes,
 mode: 'history'
});

对路由模式不清楚的小伙伴,可以看这篇vue-router路由模式详解

2)修改config/index.js,build下静态资源路径,完成后执行npm run build打包

vue项目部署到nginx/tomcat服务器的实现

3)修改nginx配置

server {
  listen    80;//代理端口
  server_name 192.168.0.152;//代理名称(域名、ip)
  #charset koi8-r;

  #access_log logs/host.access.log main;

  location / {
    root test; //项目存放的地址(当前服务器位置)
    index /index.html;            
    try_files $uri $uri/ @router; //一个覆盖所有情况的候选资源:如果 URL 匹配不到任何静态资源,返回同一个 index.html 页面
  }
  location @router {
    rewrite ^.*$ /index.html last;
  }
}

运行结果:

vue项目部署到nginx/tomcat服务器的实现

2.vue项目部署到tomcat

1)项目上线,一般需要添加项目名,并且消去vue-router产生的#号,需要在router配置

const router = new VueRouter({
 routes,
 mode: 'history',
 base: '/test/'//项目名称 访问路由页面都需要加上这个,访问的根路径为http://ip:port/test
});

2)修改config/index.js,build下静态资源路径与base的取值一致

vue项目部署到nginx/tomcat服务器的实现

3)tomcat的配置

在tomcat的webapps新建文件夹,文件夹名称和上面配置的根路径一致,即为test,然后将打包生成的dist文件夹里面的文件复制到test下,并且新建文件WEB-INF/web.xml。

项目结构为:

vue项目部署到nginx/tomcat服务器的实现

WEB-INF目录下新增web.xml内容为:

//覆盖所有情况的候选资源:如果 URL 匹配不到任何静态资源,返回同一个 index.html页面
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee
           http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"
  version="3.1" metadata-complete="true">
  <display-name>Router for Tomcat</display-name>
  <error-page>
    <error-code>404</error-code>
    <location>/index.html</location>
  </error-page>
</web-app>

详细了解可看vue官方文档后端配置HTML5 History 模式

4)重新启动tomcat

vue项目部署到nginx/tomcat服务器的实现

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
该如何加载google-analytics(或其他第三方)的JS
May 13 Javascript
JavaScript之Getters和Setters 平台支持等详细介绍
Dec 07 Javascript
jQuery模拟超链接点击效果代码
Apr 21 Javascript
js判断浏览器类型的方法
Aug 07 Javascript
apply和call方法定义及apply和call方法的区别
Nov 15 Javascript
解决JS无法调用Controller问题的方法
Dec 31 Javascript
jquery基本选择器匹配多个元素的实现方法
Sep 05 Javascript
关于webuploader插件使用过程遇到的小问题
Nov 07 Javascript
JS实现的简单图片切换功能示例【测试可用】
Feb 14 Javascript
vue router带参数页面刷新或回退参数消失的解决方法
Feb 27 Javascript
基于JS实现一个随机生成验证码功能
May 29 Javascript
html中两种获取标签内的值的方法
Jun 16 jQuery
vue-router路由模式详解(小结)
Aug 26 #Javascript
vue+moment实现倒计时效果
Aug 26 #Javascript
原生js实现针对Dom节点的CRUD操作示例
Aug 26 #Javascript
Moment.js实现多个同时倒计时
Aug 26 #Javascript
vue获取验证码倒计时组件
Aug 26 #Javascript
seajs和requirejs模块化简单案例分析
Aug 26 #Javascript
JavaScript实现身份证验证代码实例
Aug 26 #Javascript
You might like
PHP实现ftp上传文件示例
2014/08/21 PHP
Valerio 发布了 Mootools
2006/09/23 Javascript
通过javascript的匿名函数来分析几段简单有趣的代码
2010/06/29 Javascript
JS 自定义带默认值的函数
2011/07/21 Javascript
js为空或不是对象问题的快速解决方法
2013/12/11 Javascript
js插件方式打开pdf文件(浏览器pdf插件分享)
2013/12/20 Javascript
JavaScript动态改变div属性的实现方法
2015/07/22 Javascript
js省市县三级联动效果实例
2020/04/15 Javascript
vue.js入门(3)——详解组件通信
2016/12/02 Javascript
jQuery弹出窗口打开链接的实现代码
2016/12/24 Javascript
原生js实现打字动画游戏
2017/02/04 Javascript
jquery编写日期选择器
2017/03/16 Javascript
React中使用collections时key的重要性详解
2017/08/07 Javascript
深入理解Vue生命周期、手动挂载及挂载子组件
2017/09/27 Javascript
Angular 向组件传递模板的两种方法
2018/02/23 Javascript
JavaScript实现一个简易的计算器实例代码
2018/05/10 Javascript
element-ui表格数据转换的示例代码
2018/08/24 Javascript
详解vue挂载到dom上会发生什么
2019/01/20 Javascript
vue本地打开build后生成的dist文件夹index.html问题
2019/09/04 Javascript
python高并发异步服务器核心库forkcore使用方法
2013/11/26 Python
Python实现CET查分的方法
2015/03/10 Python
浅谈Python中用datetime包进行对时间的一些操作
2016/06/23 Python
在Python中使用AOP实现Redis缓存示例
2017/07/11 Python
Python实现统计代码行的方法分析
2017/07/12 Python
Python连接Redis的基本配置方法
2018/09/13 Python
python集合常见运算案例解析
2019/10/17 Python
使用Python求解带约束的最优化问题详解
2020/02/11 Python
Pyspark读取parquet数据过程解析
2020/03/27 Python
使用CSS3的::selection改变选中文本颜色的方法
2015/09/29 HTML / CSS
使用 HTML5 Canvas 制作水波纹效果点击图片就会触发
2014/09/15 HTML / CSS
兼职业务员岗位职责
2014/01/01 职场文书
党员承诺书内容
2014/03/26 职场文书
业务员自荐信范文
2014/04/20 职场文书
幼儿园大班教师随笔
2015/08/14 职场文书
《春酒》教学反思
2016/02/22 职场文书
Nginx配置https的实现
2021/11/27 Servers