投放链接防重定向

Zoella Lv3

为了防止浏览器进行多次重定向,影响页面性能,投放链接应该以 https 开头,以 ‘/‘ 结尾
不用:http://lc.jr.jd.com/finance/fund/fundinvest/investZone
使用:https://lc.jr.jd.com/finance/fund/fundinvest/investZone/

不正确投放链接

访问http://lc.jr.jd.com/finance/fund/fundinvest/investZone的请求过程:

一、有缓存

1. 协议变为 https

浏览器把协议从http替换为https(使用307重定向,保证不改变请求方法GET)

图1

2. 本地缓存获取IP

浏览器在本地缓存中获取到IP(远端地址);重定向到补充末尾”/“的规范URL

  • 返回304响应码,该GET请求的request header中包含(与缓存相关的)条件参数
  • 使用path相对路径进行重定向,因为nginx在server中设置了absolute_redirect off

图2

请求头中的条件参数(If-xxx):
图3

3. 请求资源

浏览器使用上述请求从本地缓存中获取的IP,向远端服务器GET资源,并成功
图4

二、无缓存

无缓存时,第2步变为使用301重定向

图5

不正确投放链接

访问https://lc.jr.jd.com/finance/fund/fundinvest/investZone/的请求过程:

一、有缓存

服务器返回304响应码,表示可以使用客户端中之前缓存的副本

  • 该请求的request header中包含「与缓存相关」的条件参数

图6

二、无缓存

普通请求,响应码为200

  • Title: 投放链接防重定向
  • Author: Zoella
  • Created at : 2024-10-14 16:56:06
  • Updated at : 2024-10-16 18:21:10
  • Link: https://zoella-w.github.io/2024/10/14/23-投放链接防重定向/
  • License: This work is licensed under CC BY-NC-SA 4.0.