关于 Relative Reference url

 大数据时代互联网安全越来越重要了,很多网站都开始实施全站https。

但是为了容错,当https服务不可用时,需要重新跳转向http,那么页面中的url到底是使用http还是https?

当然如果都写成https,当https服务不可用时所有访问都重定向到http,或当https服务可用时所有http都重定向到http都重定向到https,这样一旦

出现需要切换的场景,所有访问都要经过一次跳转是不能接受的。

所以采用 //www.domain.com/path形式的Relative Reference url,将所有页面中的url改写成这样的形式,只在入口访问的时候判断是http还是https,后面的所有

//www.domain.com/path的url都会解析成上一次访问的http或https(当然上次访问如果是其它协议,//www.domain.com/path也会解析成其它协议)。

比如当https服务可用时,http://www.domain.com/aaa被强制跳转到https://www.domain.com/aaa,那么这个页面中的"//www.domain.com/bbb"就会自动解析为

https://www.domain.com/bbb而不用再跳转一次,挨过来也不一样。这正是Relative的原意。

关于 Relative Reference的详细情况可以参见rfc3986的4.2章节。

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。