一个nginx + vue下二级路径版本化方案

发布时间 2023-07-24 10:29:07作者: 朝野布告

过程说明:

1、arg_appver表示读取url上appver参数

2、对appver参数做变量映射得到alias_party1_test 路径。具体条件:没有指定参数的话(即"")指向2.8.0版本化文件夹;默认的话(即default)则指向动态拼接的路径

3、第2点里面动态拼接如果不需要版本化则先固定一个路径,如果需要则使用$arg_appver来处理

4、.slink文件夹需要自己创建,里面子文件夹使用ln -s 命令做软连接做指向,然后要server配置里面设置disable_symlinks off

# 这部分要写在server外头,注意alias_party1_test要全局命名唯一
map $arg_appver $alias_party1_test {  #根据参数映射不同的路径,其中.slink里面为软连接要配置disable_symlinks off。test是为了区分环境
  ""    /usr/share/nginx/html/test_party1/.slink/2.8.0;  #默认
  # default    /usr/share/nginx/html/test_party1/.slink/$arg_appver; #有版本化需要,指定版本
  default    /usr/share/nginx/html/test_party1/.slink/2.8.0; #目前不需要版本化指向,全部使用默认版本
}

# 某活动二级路径
location /party1 {
  alias  $alias_party1_test;
  index  index.html index.htm break;
  try_files $uri $uri/ /party1/index.html;
  index index.html;
}