1 首先需要修改vue项目中的Route中的index.js文件,新增mode:‘history’,base:’/vue/’
export default new Router({
routes: [{
path: '/',
mode:'history',
base:'/vue/',
name: '',
component: login,
hidden: true,
meta: {
requireAuth: false
}
},
}
2 修改config配置文件下的index.js文件,将assetsPublicPath上由’/’ 改成’./’ ,保存
module.exports = {
dev: {
// Paths
assetsSubDirectory: 'static',
assetsPublicPath: './',
proxyTable: {
'/api': {
target: 'http://xxx.xxx.xxx.xxx:xxx', // 你请求的第三方接口
changeOrigin: true, // 在本地会创建一个虚拟服务端,然后发送请求的数据,并同时接收请求的数据,这样服务端和服务端进行数据的交互就不会有跨域问题
pathRewrite: { // 路径重写,
'^/api': '/api' // 替换target中的请求地址,也就是说以后你在请求http://api.jisuapi.com/XXXXX这个地址的时候直接写成/api即可。
}
}
},
}
3 在linux上传tomcat包,可以自己去官网下载,上传后解压,在webapp目录下,新增vue文件夹,
接下来将前端打包好的dist文件中的static,index.html文件上传到vue目录下,启动tomcat
webapp下新增vue文件夹
在bin目录下,启动tomcat就可以了
[root@instance-qcrdfo19 bin]# ./startup.sh
访问成功
4 如果发现上述的方式还是启动报错,那就换一种方法,套用一句同事的话说,办法总比问题多嘛
1 回到第一步,我们就不再新增base:'/vue/'了,
2 前端打包后,将生成的文件夹dist直接放到webapp目录下
3 启动tomcat,默认端口号8080(可以自己去conf/server.xml中去改)
4 浏览器直接访问http://localhost:8080/dist