Vue 项目部署到服务器的问题解决方法


Posted in Javascript onDecember 05, 2017

相信很多小伙伴在用Vue-cli安装的脚手架开发的时候,在开发环境中项目可以很正常的运行,但是进入到生产环境,编译打包后,放入服务器,项目就不正常了,会出现空白页或者路由跳转404等问题。遇到这些问题不要慌张,正确的配置加上后端的简单配合就可以解决。

如何打包

基于Vue-Cli,通过npm run build来进行打包的操作

如何部署

  1. 将打包出来的资源,基于Vue-Cli的一般是dist目录下有static目录和index.html文件,可以直接将这两个文件扔到服务端
  2. 但有时候,我们会直接将dist文件扔到服务端

出现的问题

  1. 打包到服务器后,出现资源引用路径的问题
  2. 打包到服务器后,出现空白页的问题
  3. 打包到服务器后,出现引入的css的type被拦截转换为"text/plain"问题
  4. 打包到服务器后,出现路由刷新404的问题

下面笔者根据自己Vue项目从编译打包到正常部署服务器的经验,来告诉大家如何解决这些问题。

一、前端配置:

①、router配置--指定路由起始(在开发模式中,Vue项目被放在了webpack配合nodeJs生成的本地服务器的根目录,但是在真实服务器中,项目肯定不会放在根目录,所以要指定router的base)

Vue 项目部署到服务器的问题解决方法

router

提前和后端商量好项目部署的服务器文件夹路径

②、编译打包配置

进入config --> index.js

Vue 项目部署到服务器的问题解决方法

build

③、使用npm run build进行打包,至此前端能做的配置已经做完

二、后端配置:

路由跳转出现404,主要原因是后端对这个虚拟的前端路由没有做任何处理,服务器在找不到指定路径下的资源时,只能向客户端返回404。

解决办法(Apache):进行url重写 --- 将Vue项目所在服务器文件夹下的路径,例如:

leibo.group/pcMall/.... 重写为 leibo.group/pcMall/index.html

Vue 项目部署到服务器的问题解决方法

.hatccess

具体的Apache开启allowoverride ,url重写,后端分分钟就解决了

如果是其他类型服务器

请自行参考https://router.vuejs.org/zh-cn/essentials/history-mode.html

总结:在单页面部署服务器中,其实更多的是思想的改变,利用前端路由来控制用户界面内容的变更,以上就是笔者在项目部署服务器中的一些经验,如果有什么阐述的不当的地方,还望指出!

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

Javascript 相关文章推荐
浅谈javascript的原型继承
Jul 25 Javascript
浅析JavaScript中的隐式类型转换
Dec 05 Javascript
使用JavaScript判断手机浏览器是横屏还是竖屏问题
Aug 02 Javascript
ionic在开发ios系统微信时键盘挡住输入框的解决方法(键盘弹出问题)
Sep 06 Javascript
javascript 中select框触发事件过程的分析
Aug 01 Javascript
微信小程序页面跳转功能之从列表的item项跳转到下一个页面的方法
Nov 27 Javascript
Vue.js实现图片的随意拖动方法
Mar 08 Javascript
JS实现的JSON序列化操作简单示例
Jul 02 Javascript
微信小程序自定义组件之可清除的input组件
Jul 17 Javascript
解决Layui数据表格中checkbox位置不居中的方法
Aug 15 Javascript
使用validate.js实现表单数据提交前的验证方法
Sep 04 Javascript
javascript的delete运算符知识点总结
Nov 19 Javascript
webpack学习教程之前端性能优化总结
Dec 05 #Javascript
vue实现消息的无缝滚动效果的示例代码
Dec 05 #Javascript
微信小程序基于slider组件动态修改标签透明度的方法示例
Dec 04 #Javascript
JS实现的计数排序与基数排序算法示例
Dec 04 #Javascript
JS 中document.write()的用法和清空的原因浅析
Dec 04 #Javascript
JavaScript实现省市联动过程中bug的解决方法
Dec 04 #Javascript
浅谈 vue 中的 watcher
Dec 04 #Javascript
You might like
那些年一起学习的PHP(三)
2012/03/22 PHP
php检测用户是否用手机(Mobile)访问网站的类
2014/01/09 PHP
PHP判断是否有Get参数的方法
2014/05/05 PHP
ThinkPHP查询语句与关联查询用法实例
2014/11/01 PHP
Laravel5.5 视图 - 创建视图和数据传递示例
2019/10/21 PHP
Document 对象的常用方法
2009/07/31 Javascript
document.getElementById方法在Firefox与IE中的区别
2010/05/18 Javascript
cocos2dx骨骼动画Armature源码剖析(三)
2015/09/08 Javascript
JS实现仿新浪黄色经典滑动门效果代码
2015/09/27 Javascript
JavaScript实现上下浮动的窗口效果代码
2015/10/12 Javascript
BootStrap 下拉菜单点击之后不会出现下拉菜单(下拉菜单不弹出)的解决方案
2016/12/14 Javascript
理解javascript中的Function.prototype.bind的方法
2017/02/03 Javascript
3种vue路由传参的基本模式
2018/02/22 Javascript
VeeValidate 的使用场景以及配置详解
2019/01/11 Javascript
基于JS正则表达式实现模板数据动态渲染(实现思路详解)
2020/03/07 Javascript
基于Ionic3实现选项卡切换并重新加载echarts
2020/09/24 Javascript
vue使用keep-alive实现组件切换时保存原组件数据方法
2020/10/30 Javascript
vue组件中传值EventBus的使用及注意事项说明
2020/11/16 Javascript
vue 解决IOS10低版本白屏的问题
2020/11/17 Javascript
用ReactJS和Python的Flask框架编写留言板的代码示例
2015/12/19 Python
Python实现随机选择元素功能
2017/09/14 Python
opencv实现简单人脸识别
2021/02/19 Python
使用darknet框架的imagenet数据分类预训练操作
2020/07/07 Python
Selenium python时间控件输入问题解决方案
2020/07/22 Python
FC-Moto瑞典:欧洲最大的摩托车服装和头盔商店之一
2018/11/27 全球购物
极简鞋类,赤脚的感觉:Lems Shoes
2019/08/06 全球购物
高校辅导员推荐信范文
2013/12/25 职场文书
元宵晚会主持词
2014/03/25 职场文书
家长通知书教师评语
2014/04/17 职场文书
《假如》教学反思
2014/04/17 职场文书
年度安全生产目标责任书
2014/07/23 职场文书
2014年国庆节演讲稿
2014/09/19 职场文书
2019单位介绍信怎么写
2019/06/24 职场文书
MySQL优化之如何写出高质量sql语句
2021/05/17 MySQL
Java Optional<Foo>转换成List<Bar>的实例方法
2021/06/20 Java/Android
flex布局中使用flex-wrap实现换行的项目实践
2022/06/21 HTML / CSS