vue打包之部署在非根路径下的三两事
首先,感叹一下,2019年已经过去一半,想想自己做了些什么,好像也没做什么。
今天试着配一个nginx,以前的nginx都是指向的/根路径,今天的nginx指向的非/根路径,遇到许多问题的,总结总结。
老规矩,先来点示例代码:
nginx:
server {
listen ;
server_name domain.com;
location /path {
alias "/your-project-file";
index index.html;
try_files $uri $uri/ /path/index.html;
}
}
location /path :表示项目访问地址为http://domain.com/path
alias /your-project-file :指向你的项目打包后放在服务器的位置
try_files /path/index.html :这里为router官方文档推荐的写法,需要把/path加上
然后就是vue代码,这里用到的是vue-cli3x的代码,上关键的:
首先是vue.config.js下的publicPath: process.env.NODE_ENV === 'production' ? '/path': '/',为什么需要这样配?具体参见cli文档
然后是路由需要配置base: process.env.NODE_ENV === 'production' ? '/path': '/',这个也需要看router文档
通过这两个地方的配置,访问http://domain.com/path就可以访问到你打包后的项目了,但是!!!!
项目中的图片我是放在public文件夹下的,打包后没有正确的将public文件夹给加上/path,导致所有图片都404,很烦
这时网上出现了两个声音,第一,将图片放到src文件夹里面的assets。我试过,没搞出来,放弃了。第二,在图片前加上publicPath,参见文档。
是的,包括所有以静态资源方式引入到项目的框架/插件,都需要拼上<%= BASE_URL %>,处理完之后,再次打包,解决了。
啊,时间好快,文章好水...
vue打包之部署在非根路径下的三两事的更多相关文章
- Java日志组件logback使用:加载非类路径下的配置文件并设置定时更新
Java日志组件logback使用:加载非类路径下的配置文件并设置定时更新 摘自: https://blog.csdn.net/johnson_moon/article/details/7887449 ...
- Vue打包上线部署
一.路径问题 1.脚手架+webpack打包通过npm run build,但是后台tomcat部署上线的时候,会衍生出一些问题,比如,路径问题(因为在项目中,我们使用了绝对路径,这里必须要使用相对路 ...
- vue打包后找不到资源路径问题
问题描述: 使用webpack打包vue项目后,前后端联调无法找到资源 解决方案: 一. 改为相对路径,去除axios中地址的第一个“/” onProxyReq: function (proxyReq ...
- vue打包之后找不到图片路径,打包项目时,dist文件夹内部分图片找不到
1.打包项目时,会默认把存放在public内的小于4k的图片转换成base64,作为内联样式. 可以在vue.config.js中修改默认大小,在chainWepack:config=>{}中添 ...
- vue 打包成 apk 文件(修改路径)
第一个坑:文件引用路径 现在项目我们什么都没动,是初始化之后直接打包的状态,打开dist/index.htmnl文件整个网页都是一片空白的. 爬坑: 打开 config文件夹/index.js文件 a ...
- vue 打包的项目当背景图路径错误
当背景图路径错误时: 在build/utils.js中添加或更改这句话:publicPath: '../../',
- Vue打包之后部署到 express 服务器上
Part.1 安装 express npm install express body-parer --save Part.2 在项目根目录下创建 app.js 文件作为启动 express 服务器代码 ...
- 在同级路径下,SpringBoot两种类型的配置文件(.properties/.yml)同时存在时,配置优先级如何处理?
两类配置文件如果同时存在,若 key 相同则 properties 优先级高,若key不同则合并加载:
- vue打包后运行在本地/非服务器端环境的访问路径
vue打包前的配置: 项目目录下--> config文件夹---> index.js: build: { assetsPublickPath: './', // 设置成相对路径 ...
随机推荐
- pytorch基础2
下面是常见函数的代码例子 import torch import numpy as np print("分割线---------------------------------------- ...
- 运行pip报错:Fatal error in launcher: Unable to create process using '’路径’'
参考此文:https://blog.csdn.net/cjeric/article/details/73518782 win7笔记本安装了Python2.7,Python3.7,以及anaconda3 ...
- 用JS写的一个简单的时钟
没什么技术含量,单纯的想传上去.手痒了 <!DOCTYPE html> <html> <head> <meta charset="utf-8&quo ...
- <b> <i> 标记
<b></b> bold 加粗 <i></i> italic 斜线 : 对应Word文档的 I 斜体 <u></u>unde ...
- Cooki and Session
目录 Cookie Cookie的由来 什么是Cookie Cookie的原理 查看Cookie Django中操作Cookie 获取Cookie 设置Cookie 删除Cookie Session ...
- 从三层架构到Spring框架
首先是软件的应用分层架构 标准三层架构: 1:数据访问层:实现了数据的持久化 2:业务逻辑层:对逻辑的实现及处理,实际上不可能在表示层对数据不做任何处理,但是尽可能的将逻辑分为一层 3:表示层:数据的 ...
- Django 连接MySQL的驱动设置
对于在Django 中连接MySQL 的驱动,有以下三种: 1) mysqlclient 2) mysql-connector-python 3) pymysql (建议:这个包已经有一年未升级了,本 ...
- C#窗体随意移动
//全区域移动 const int WM_NCLBUTTONDOWN = 0xA1; const int HT_CAPTION = 0x2; [DllImport("user32.dll&q ...
- js中控制流管理的四种方法
引自http://es6.ruanyifeng.com/#docs/generator#yield--表达式 1.常用的回调方法 step1(function (value1) { step2(val ...
- C语言函数指针和回调函数
彻底搞定C指针-函数名与函数指针 函数名&函数名取地址 函数指针 通常我们可以将指针指向某类型的变量,称为类型指针(如,整型指针).若将一个指针指向函数,则称为函数指针. 函数名的意义 函数名 ...