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 相关文章推荐
基于vue与element实现创建试卷相关功能(实例代码)
Dec 07 Vue.js
vue监听滚动事件的方法
Dec 21 Vue.js
为什么推荐使用JSX开发Vue3
Dec 28 Vue.js
vue实现图书管理系统
Dec 29 Vue.js
vue中activated的用法
Jan 03 Vue.js
vue浏览器返回监听的具体步骤
Feb 03 Vue.js
vue 中 get / delete 传递数组参数方法
Mar 23 Vue.js
vue实现倒计时功能
Mar 24 Vue.js
详解Vue的options
May 15 Vue.js
vue响应式原理与双向数据的深入解析
Jun 04 Vue.js
vue实力踩坑之push当前页无效
Apr 10 Vue.js
vue+elementUI实现表格列的显示与隐藏
Apr 13 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
PHP中实现Bloom Filter算法
2015/03/30 PHP
php统计数组元素个数的方法
2015/07/02 PHP
PHP二分查找算法示例【递归与非递归方法】
2016/09/29 PHP
PHP操作MongoDB实现增删改查功能【附php7操作MongoDB方法】
2018/04/24 PHP
laravel执行php artisan migrate报错的解决方法
2019/10/09 PHP
“不能执行已释放的Script代码”错误的原因及解决办法
2007/09/09 Javascript
jQuery 判断元素上是否绑定了事件
2009/10/28 Javascript
JS数学函数Exp使用说明
2012/08/09 Javascript
Jquery实现搜索框提示功能示例代码
2013/08/13 Javascript
js点击出现悬浮窗效果不使用JQuery插件
2014/01/20 Javascript
js实现网页图片延时加载 提升网页打开速度
2016/01/26 Javascript
vue之父子组件间通信实例讲解(props、$ref、$emit)
2018/05/22 Javascript
Vue组件中prop属性使用说明实例代码详解
2018/05/31 Javascript
vue 中动态绑定class 和 style的方法代码详解
2018/06/01 Javascript
JavaScript实现新年倒计时效果
2018/11/17 Javascript
vue实现给div绑定keyup的enter事件
2020/07/31 Javascript
nuxt 实现在其它js文件中使用store的方式
2020/11/05 Javascript
[35:44]2014 DOTA2华西杯精英邀请赛 5 24 iG VS VG
2014/05/26 DOTA
[03:03]DOTA2 2017国际邀请赛开幕战队入场仪式
2017/08/09 DOTA
Python中的os.path路径模块中的操作方法总结
2016/07/07 Python
python+django快速实现文件上传
2016/10/24 Python
python thrift搭建服务端和客户端测试程序
2018/01/17 Python
利用python修改json文件的value方法
2018/12/31 Python
Python异常处理例题整理
2019/07/07 Python
python 使用opencv 把视频分割成图片示例
2019/12/12 Python
浅谈Python 函数式编程
2020/06/20 Python
查找廉价航班和发现新目的地:Kiwi.com
2019/02/25 全球购物
美国最大最全的亚洲购物网站:美国亚米网(Yamibuy)
2020/05/05 全球购物
一份全面的PHP面试问题考卷
2012/07/15 面试题
结婚周年感言
2014/02/24 职场文书
遗失说明具结保证书
2015/02/26 职场文书
2015应届毕业生自荐信范文
2015/03/05 职场文书
质量承诺书格式范文
2015/04/28 职场文书
员工年度工作总结2015
2015/05/18 职场文书
党小组意见范文
2015/06/08 职场文书
php去除deprecated的实例方法
2021/11/17 PHP