#独家
如果nginx中配置了location规则,在vue页面中路由跳转的时候会将location的前缀刷掉怎么解决?

2023-07-14 0 2,639

如果nginx中配置了location,在vue页面中路由跳转的时候会将location的前缀刷掉怎么处理?
例如在nginx的配置里:

server{
  listen xxxx:xxxx;

  # 这里匹配的规则是 /mydisk/
  location /mydisk/ {
    root /var/www/mydisk/web;
    index index.html;
  }
}

vue项目中,路由的规则:

const routes = [
  {
    path: '/',
    name: 'filelist',
    component: FileListCom,
  },
  {
    path: '/upload',
    name: 'fileupload',
    component: UploadCom
  }
]

菜单:

<el-menu router default-active="/mydisk/" mode="horizontal">
  <el-menu-item index="/">
    A
  </el-menu-item>
  <el-menu-item index="/upload">
    B
  </el-menu-item>
</el-menu>

把项目打包发布后,访问http://xxxx:xxxx/mydisk/,这时候访问的页面是正常的,但是点击菜单A后,地址就变成了http://xxxx:xxxx/(或者点击菜单B后,地址变成http://xxxx:xxxx/upload),这样页面资源就请求不到了
我现在的解决办法是直接在vue路由规则里写死前缀/mydisk/,但是应该有更规范的办法吧,望大家赐教

在 vue.config.js 中设置 publicPath 选项,将 publicPath 设置为 ‘/mydisk’,然后重新打包

https://blog.csdn.net/qq_27575627/article/details/130215619

1.修改vue.config.js publicPath 为 /maydistk
2.修改路由

const router = createRouter({history: createwebHistory('/maydistk'),routes}}
  1. 重新打包
收藏 (0) 打赏

感谢您的支持,我会继续努力的!

打开微信/支付宝扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
点赞 (0)

1. JK下载官网所有资源来源于开发团队,加入会员即可下载使用!如有问题请联系右下角在线客服!
2. JK下载官方保障所有软件都通过人工亲测,为每位会员用户提供安全可靠的应用软件、游戏资源下载及程序开发服务。
3. JK开发团队针对会员诉求,历经多年拥有现今开发成果, 每款应用程序上线前都经过人工测试无误后提供安装使用,只为会员提供安全原创的应用。
4. PC/移动端应用下载后如遇安装使用问题请联系右下角在线客服或提交工单,一对一指导解决疑难。

JK软件下载官网 技术分享 如果nginx中配置了location规则,在vue页面中路由跳转的时候会将location的前缀刷掉怎么解决? https://www.jkxiazai.com/2034.html

JK软件应用商店是经过官方安全认证,保障正版软件平台

相关资源

官方客服团队

为您解决烦忧 - 24小时在线 专业服务