Vue项目打包部署到apache服务器的方法步骤


Posted in Vue.js onFebruary 01, 2021

vue项目在开发环境下,让项目运行起来,是通过npm run dev命令,原理是在本地搭建了一个express服务器。

但是在服务器上就不是这样的,必须要通npm run build命令来对整个项目进行打包,打包后会在项目目录下生成一个dist文件夹,内容如下:

Vue项目打包部署到apache服务器的方法步骤

然后就是把这些文件丢到服务器上的某个文件夹下,我这里的文件夹名字是ibms

Vue项目打包部署到apache服务器的方法步骤

遇到的问题:

1. 直接去访问http://www.xxx.com/ibms/,会发现网页是白屏的,什么都没有,这就比较奇怪了,其实是因为资源加载的路径有问题!

解决方法:

在config中的index.js里build下修改webpack配置:

assetsPublicPath: '/ibms/'

在router中的index.js配置中加上:

export default new Router({
 mode: 'history',
 scrollBehavior: () => ({ y: 0 }),
 base: '/ibms/', // 加上这一行
 routes: constantRouterMap
})

接下来再重新npm run build打包,然后丢到服务器上ibms文件夹下,这时页面就可以正常访问了。

2. 在当前页面刷新或者用url栏访问某个子页面,结果发现网页404了,这是因为vue路由的mode是history模式。

解决方法:

把所有的请求全部转发到http://www.xxx.com/ibms/index.html上就可以了

我这里用的是apache做的web服务器,在ibms目录下新建.htaccess文件(跟index.html同级),编辑代码。

Vue项目打包部署到apache服务器的方法步骤

<IfModule mod_rewrite.c>
  RewriteEngine On
  RewriteBase /ibms/
  RewriteRule ^index\.html$ - [L]
  RewriteCond %{REQUEST_FILENAME} !-f
  RewriteCond %{REQUEST_FILENAME} !-d
  RewriteRule . /ibms/index.html [L]
</IfModule>

这个配置的作用就是把所有服务器上不存在请求全部转发到index.html上去。(PS:记得要重启apache服务器哦)

到此这篇关于Vue项目打包部署到apache服务器的方法步骤的文章就介绍到这了,更多相关Vue项目打包部署到apache内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Vue.js 相关文章推荐
Vue3配置axios跨域实现过程解析
Nov 25 Vue.js
详解如何在vue+element-ui的项目中封装dialog组件
Dec 11 Vue.js
vue使用过滤器格式化日期
Jan 20 Vue.js
vue使用transition组件动画效果的实例代码
Jan 28 Vue.js
Vue单页面应用中实现Markdown渲染
Feb 14 Vue.js
vue中h5端打开app(判断是安卓还是苹果)
Feb 26 Vue.js
vue-router懒加载的3种方式汇总
Feb 28 Vue.js
vue3中的组件间通信
Mar 31 Vue.js
Vue和Flask通信的实现
May 19 Vue.js
vue+elementui 实现新增和修改共用一个弹框的完整代码
Jun 08 Vue.js
vue 给数组添加新对象并赋值
Apr 20 Vue.js
vue二维数组循环嵌套方式 循环数组、循环嵌套数组
Apr 24 Vue.js
如何在vue中使用video.js播放m3u8格式的视频
Feb 01 #Vue.js
Vue 实现可视化拖拽页面编辑器
Feb 01 #Vue.js
vue-video-player 断点续播的实现
Feb 01 #Vue.js
Vite和Vue CLI的优劣
Jan 30 #Vue.js
如何使用RoughViz可视化Vue.js中的草绘图表
Jan 30 #Vue.js
vue监听键盘事件的相关总结
Jan 29 #Vue.js
Vue 实例中使用$refs的注意事项
Jan 29 #Vue.js
You might like
Zend 输出产生XML解析错误
2009/03/03 PHP
PHP 命令行工具 shell_exec, exec, passthru, system详细使用介绍
2011/09/11 PHP
PHP学习笔记之字符串编码的转换和判断
2014/05/22 PHP
PHP把小数转成整数3种方法
2014/06/30 PHP
PHP下通过QRCode类库创建中间带网站LOGO的二维码
2014/07/12 PHP
php构造函数的继承方法
2015/02/09 PHP
PHP学习笔记之php文件操作
2016/06/03 PHP
脚本之家贴图转换+转贴工具用到的js代码超级推荐
2007/04/05 Javascript
基于jquery库的tab新形式使用
2012/11/16 Javascript
js实现页面转发功能示例代码
2013/08/05 Javascript
JavaScript中的Math.LN2属性用法详解
2015/06/12 Javascript
jQuery简单实现验证邮箱格式
2015/07/15 Javascript
jQuery实现定时读取分析xml文件的方法
2015/07/16 Javascript
jQuery实现智能判断固定导航条或侧边栏的方法
2016/09/04 Javascript
Angularjs 实现一个幻灯片示例代码
2016/09/08 Javascript
JS实现表单多文件上传样式美化支持选中文件后删除相关项
2016/09/30 Javascript
快速掌握jQuery插件开发
2017/01/19 Javascript
详解闭包解决jQuery中AJAX的外部变量问题
2017/02/22 Javascript
微信小程使用swiper组件实现图片轮播切换显示功能【附源码下载】
2017/12/12 Javascript
bootstrap 点击空白处popover弹出框隐藏实例
2018/01/24 Javascript
记一次Vue.js混入mixin的使用(分权限管理页面)
2019/04/17 Javascript
实例讲解React 组件
2020/07/07 Javascript
Taro小程序自定义顶部导航栏功能的实现
2020/12/17 Javascript
[01:19:35]DOTA2上海特级锦标赛主赛事日 - 3 败者组第三轮#2Fnatic VS OG第二局
2016/03/05 DOTA
Python如何输出百分比
2020/07/31 Python
python源文件的字符编码知识点详解
2021/03/04 Python
CSS3关于z-index不生效问题的解决
2020/02/19 HTML / CSS
朗仕(Lab series)英国官网:雅诗兰黛集团男士专属护肤品牌
2017/11/28 全球购物
《两个铁球同时着地》教学反思
2014/02/13 职场文书
大学校务公开实施方案
2014/03/31 职场文书
设备售后服务承诺书
2014/05/30 职场文书
交通事故赔偿协议书怎么写
2014/10/04 职场文书
考试作弊万能检讨书
2014/10/19 职场文书
行政前台岗位职责
2015/04/16 职场文书
东京审判观后感
2015/06/01 职场文书
小学教师师德培训心得体会
2016/01/09 职场文书