boot2.0+vue前后端分离,把vue工程build到boot中然后达成war部署至tomcat中,必须要加上idnex.html才能访问??如何直接访问项目名?

咖啡加糖 发布于 2020/07/30 09:59
阅读 2K+
收藏 0

         项目组采用的是boot2.0+vue前后端分离的方式开发,但是因为没有专业的运维人员,所以决定部署到一起达成war的方式进行上线。

        目前经过摸索和踩坑,已经可以正常合在一起并达成war部署到tomcat,但是遇到一个问题,就是我访问项目必须在项目名称后面加上index.html  才可以访问,比如 http://127.0.0.1:8080/test/index.html,直接访问,所有模块功能一切正常,http://127.0.0.1:8080/test这个地址就会被拦截并提示“,经jwt 认证失败,无法访问系统资源”,系统中做了token验证,我试着把/test假如忽略拦截 也无效,想请教各位大佬如何解决这个问题??

谢谢

下面是项目结构图:

加载中
0
咖啡加糖
咖啡加糖

感谢各位的回复,目前是这样解决的,增加一个拦截器,对于/test进行拦截并重定向至/test/index.html,
 

0
innerloop
innerloop

既然前后端分离 推荐就别用tomcat了,nginx比较适合,或者apache, nginx或者apache 可以通过ht文件或者host文件 去改访问
vue npm 发布后,所有的东西都在index.html,你打开看一下就知道

咖啡加糖
咖啡加糖
感谢回复,因为客户必须要求war+tomcat这种方式,不好更改了
0
w_jeck
w_jeck

前端是vue静态页面在webapps里面独立文件夹可以改为ROOT;用户访问页面就是vue build页面;但在js里面封装的接口为webapps另一个文件夹也就是war解压后的路径加上方法里面的接口路径。不知道描述就清楚没有;你就把tomcat想象成nginx就是了;nginx用端口区分;tomcat用文件夹区分

0
0
丁四

把vue打出来的资源文件放到resources/public下试试

0
M
Mzoro

我记得可以设置welcome

0
愿被世界温柔以待
愿被世界温柔以待

前后端分离不是前端单独用前端开发工具,然后单独用服务器部署在nginx?

0
皖渝-驻OSC大使
皖渝-驻OSC大使

了解一下这个Maven插件吧, frontend-maven-plugin ,前端dist应该就有index.html,放到template下面即可。dist其他文件放到static

OSCHINA
登录后可查看更多优质内容
返回顶部
顶部