uni-app nginx tp5 H5 vue-router history模式 网址刷新变404图文解决办法(浏览不要带#) phpStudy 伪静态

本文主要介绍了如何在uni-app中使用H5的history模式去掉URL中的#号,并解决因使用该模式导致的刷新404问题。通过配置nginx和tp5的环境,确保在不同平台(如Windows的phpStudy和Linux的CentOS)上,当URL变化时能正确加载页面。
摘要由CSDN通过智能技术生成

一、目的去掉uni-app生成H5网址中的#符号

带#网址:https://www.xxx.cn/h5/#/pages/tabBar/News/details?id=180

不带#网址:https://www.xxx.cn/h5/pages/tabBar/News/details?id=180

 

二、官方去掉#号方法:

HTML5 History 模式
vue-router 默认 hash 模式 —— 使用 URL 的 hash 来模拟一个完整的 URL,于是当 URL 改变时,页面不会重新加载。

如果不想要很丑的 hash,我们可以用路由的 history 模式,这种模式充分利用 history.pushState API 来完成 URL 跳转而无须重新加载页面。

const router = new VueRouter({
  mode: 'history',
  routes: [...]
})
当你使用 history 模式时,URL 就像正常的 url,例如 http://yoursite.com/user/id,也好看!

不过这种模式要玩好,还需要后台配置支持。因为我们的应用是个单页客户端应用,如果后台没有正确的配置,当用户在浏览器直接访问 http://oursite.com/user/id 就会返回 404,这就不好看了。

所以呢,你要在服务端增加一个覆盖所有情况的候选资源:如果 URL 匹配不到任何静态资源,则应该返回同一个 index.html 页面,这个页面就是你 app 依赖的页面。

 

https://ask.dcloud.net.cn/article/35232

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值