vue项目打包部署到服务器的方法示例
上上一篇我写过一些关于vue项目部署到linux服务器的文章,但是那是以node作为开发环境 pm2 守护进程的方式,让他能正常运行,可是还是出现了问题,因为属于与APP交互的页面,在webView中打开过慢,APP的用户体验非常的差,所以我查找了资料,改变了部署方式,接下来我介绍一下 这一次,我想Tomcat为例 我们先看一下Linux中 Tomcat下面的目录结构: 以vue-cli 搭建出来的手脚架 webpack的模板下的/config/index.js,这里可以看到assetsPublicPath这个键,而且还有两次,中间我自己挖过的坑我就不说了,这里要说的是,刚才两个键的后面都进行一次修改,都加一个 './' 为什么要改这里呢,是因为路径问题,如果不修改,部署到Tomcat上会出现空白页 接下来我来贴出我修改后的config/index.js的配置 const path = require('path')
module.exports = { 是不是修改的都是 assetsPublicPath这个键的值 "/",改成"./" 这里我还想提一下我中间遇到的坑: 在开发模式的时候我们会在这里配置proxyTable: {},配置他的原因是为了开发的时候解决前后端分离跨域问题的 这里一般我们会这么去写 记住,这么写是为了开发模式的时候方便前后分离开发,但是我们在打包的时候一定要去掉这一部分了,因为在同一环境同端口下是不存在跨域问题的了 而我这里打包的时候就把这一部分给去掉了 变成proxyTable: {} 与此同时,我们在开发模式的时候写axios时会在接口前面加一个"/api" 我们在打包之前同样要去掉,变成后端给的那种接口,这样在部署到服务器的时候,接口路径才能正确 接下来我们还需要修改一个地方 vue-router vue单页面应用绝大部分都用到了这个vue-router,所以我们这里也需要做一部分修改就需要给 src/router/index.js添点东西,如下面: 然后我们再执行npm run build ,就能发现我们打包出来的一个文件dist 而这个打包好的文件在这个项目的根目录下,我们把他放到Tomcat的目录下的WebApps中,就跨域访问到你的页面了 http://59.111.111.11:4000/dist/ 备注:记得开通服务器上的端口号,要不然也是访问失败。 需要注意的是:图片资源命名的时候不要有中文,因为中文的话服务器访问可能图片显示不出来。如果遇到Vue 项目部署到服务器的问题,请点击此文章,或许能找到解决方法 以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持编程之家。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |