vue-历史模式部署

项目部署

本项目采用nginx进行部署,历史模式的部署需要服务端的配合,本次采用nginx进行配合。

1 配置

bash 复制代码
const basePath = process.env.VUE_APP_BASE_PATH;
module.exports = {
  publicPath: basePath #静态资源的路径 /ecology/
}

2 创建路由

bash 复制代码
const createRouter = baseRouter => {
  const router = new VueRouter({
    #/ecology 
    base: baseRouter || process.env["VUE_APP_BASE_PATH"].slice(0, -1),
    mode: "history",
    routes: [...constantRoutes, ...asyncRoutes]
  });
  return router;
};

3 nginx配置

bash 复制代码
location /ecology {
  root html;
  index index.html index.htm;
  #这个配置的含义为:当请求到这个路径下面时/ecology/main/overview 会首先去这个路径下访问index.html如果有则返回这个静态资源
  #如果没有 继续向后匹配 nginx内部重新定向到 /ecology/indexl.html 这样的话就相当于重定向到了首页,此时携带了路径参数/main/overview,就会触发vue路由的工作。其实这样也可以只写/ecology/index.html就已经完全足够。
  try_files  $uri $uri/  /ecology/index.html; 
}

http://11.2.19.11:8088/ecology/main/overview

$uri:/ecology/main/overview

$request_uri:http://11.2.19.11:8088/ecology/main/overview

try_files: 官方文档

特别注意的是:静态资源路径,路由路径和nginx Location的路径一定要保持一致。

相关推荐
神奇的程序员5 小时前
开发了一个管理本地开发环境的软件
前端·flutter
天若有情6735 小时前
程序员原创|借鉴JS事件冒泡,根治电脑文件混乱的“冒泡整理法”
开发语言·javascript·windows·ecmascript·电脑·办公·日常
XiYang-DING6 小时前
HTML 核心标签
前端·html
Csvn6 小时前
技术选型方法论
前端
Csvn6 小时前
前端架构演进:从页面到平台的十年变革
前端
李伟_Li慢慢6 小时前
ShaderToy-山峦+蓝天+白云
前端·webgl
小码哥_常7 小时前
Android字体字重设置全攻略:XML黑科技+Kotlin动态实现,告别.ttf臃肿
前端
FYKJ_20107 小时前
springboot校园兼职平台--附源码02041
java·javascript·spring boot·python·eclipse·django·php
言萧凡_CookieBoty8 小时前
AI 编程省 Token 实战:从 Spec、上下文工程到模型分层的降本策略
前端·ai编程
DFT计算杂谈8 小时前
wannier90 参数详解大全
java·前端·css·html·css3