知识点
- 路由有两种工作模式hash和history
- 对于一个url来说,什么是hash值?—— #及其后面的内容就是hash值。
- hash值不会包含在 HTTP 请求中,即:hash值不会带给服务器。
- hash模式
- 地址中永远带着#号,不美观 。
- 若以后将地址通过第三方手机app分享,若app校验严格,则地址会被标记为不合法。
- 兼容性较好。
- history模式
- 地址干净,美观 。
- 兼容性和hash模式相比略差。
- 应用部署上线时需要后端人员支持,解决刷新页面服务端404的问题。
- 解决history的404问题
-
如果使用node.js我们可以借助connect-history-api-fallback这个库去解决。
①. 创建一个包管理器npm init
②. 安装express:npm i express -
同样也可使用nginx去解决
-
location /{
root /website/wenfu_zszk/;
index index.html;
#解决404
try_files $uri $uri/ /index.html;
}
try_files:按选项所指定的顺序去检查用户请求的文件是否存在,如果本地存在的话则返回该请求;不存在的话将该请求转发到指定的其它路径。
$uri:这个变量指当前的请求URI,不包括任何参数
网友评论