出现的问题:最近做的一个vue项目,npm run build打包后,用nginx部署,
打开默认地址: 域名/gcmanager/,跳到了我配置的404页面,如下图:
在这里插入图片描述
于是我手动输入页面的路由地址,我本地这个路径都能访问到页面,部署后却找不到页面了,
在这里插入图片描述
在这里插入图片描述
这是我路由的index.js文件

———————————————————————————————————

分析问题

  1. nignx,需要配置history模式,解决办法有两种:
    a. 取消路由的 history 模式,把mode:"history"去掉
    b.nginx配置location / { try_files $uri $uri/ /index.html;}
    a方法中的histroy模式是取消vue-router的默认hash模式,所以我选择了第二种方法,结果尝试发现无效…
    具体的可以参考官方文档:https://router.vuejs.org/zh/guide/essentials/history-mode.html#%E5%90%8E%E7%AB%AF%E9%85%8D%E7%BD%AE%E4%BE%8B%E5%AD%90

  2. 在vue里的router里,把之前的/networth/,改成gcmanager,就改了这么一个地方,结果就好了。。很神奇
    可能是因为运维配置的就是 域名/gcmanager,
    而我之前vue之前base是networth,所以默认是 域名/networth/路径…

    最后改成和运维一样的/gcmanager/就ok了
    在这里插入图片描述
    现在可以正常访问了,
    在这里插入图片描述
    开心~

Logo

前往低代码交流专区

更多推荐