Vue项目打包部署到apache服务器的方法步骤
vue项目在开发环境下,让项目运行起来,是通过npm run dev命令,原理是在本地搭建了一个exPress服务器。
但是在服务器上就不是这样的,必须要通npm run build命令来对整个项目进行打包,打包后会在项目目录下生成一个dist文件夹,内容如下:
然后就是把这些文件丢到服务器上的某个文件夹下,我这里的文件夹名字是ibms
遇到的问题:
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同级),编辑代码。
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-cli3项目打包后自动化部署到服务器的方法
- Vue3项目打包后部署到服务器 请求不到后台接口解决方法
- Vue项目打包部署到iis服务器的配置方法
- vue项目打包部署到服务器的方法示例
- vue 打包后的文件部署到express服务器上的方法
- Vue项目webpack打包部署到服务器的实例详解
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: Vue项目打包部署到apache服务器的方法步骤
本文地址: https://pptw.com/jishu/594457.html