解决vue项目打包部署到tomcat时,访问成功,但是刷新后页面报404
vue
vuejs/vue: 是一个用于构建用户界面的 JavaScript 框架,具有简洁的语法和丰富的组件库,可以用于开发单页面应用程序和多页面应用程序。
项目地址:https://gitcode.com/gh_mirrors/vu/vue
免费下载资源
·
问题描述:
使用webpack打包vue后, 将打包好的文件, 发布到tomcat上, 访问成功,但是刷新该页面后报404错误。
问题根源:
是html5 history模式引发的问题, 具体的原因, 官方那个已经给了解释,查看 https://router.vuejs.org/zh-cn/essentials/history-mode.html
解决方案:
官方给的解决方案原理:要在服务端增加一个覆盖所有情况的候选资源,如果url匹配不到任何静态资源,则返回同一个index.html页面,这个页面就是app依赖的页面。所以在tomcat服务器下操作: 在打包好的项目根目录(和index.html同一级)下新建一个WEP-INF文件夹, 在此文件夹下写一个web.xml,内容如下:
xml
<?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>
这样的目的是一旦页面出现404就返回到index.html页面
原文链接:https://www.cnblogs.com/sllzhj/p/12937129.html
GitHub 加速计划 / vu / vue
207.54 K
33.66 K
下载
vuejs/vue: 是一个用于构建用户界面的 JavaScript 框架,具有简洁的语法和丰富的组件库,可以用于开发单页面应用程序和多页面应用程序。
最近提交(Master分支:2 个月前 )
73486cb5
* chore: fix link broken
Signed-off-by: snoppy <michaleli@foxmail.com>
* Update packages/template-compiler/README.md [skip ci]
---------
Signed-off-by: snoppy <michaleli@foxmail.com>
Co-authored-by: Eduardo San Martin Morote <posva@users.noreply.github.com> 4 个月前
e428d891
Updated Browser Compatibility reference. The previous currently returns HTTP 404. 5 个月前
更多推荐
已为社区贡献3条内容
所有评论(0)