使用CDN加速域名后访问资源返回304状态码

作者阿里云代理 文章分类 分类:图文教程 阅读次数 已被围观 587

概述

本文主要介绍使用CDN加速域名后,访问资源有时会返回304状态码的相关介绍。

 

详细信息

客户端第一次向服务器成功发送请求,服务器会把内容返回给客户端,状态码是200,且会标记内容修改时间,生成一个ETag标记,用来核实内容是否修改过。等下次同一客户端再次发送请求,会根据请求标记的修改时间,通过ETag标记判断文件内容在这期间是否修改过。如果没有修改过,则返回304状态码。客户端直接加载缓存内容,如果文件内容修改过则把最新内容返回给客户端,并返回最新文件修改时间和ETag。返回304状态码示例如下。

  1. 浏览器客户端第一次访问一个图片,请求成功,服务器返回200状态码,Response Header响应包里会包含Last-Modified最近修改时间和ETag。
  2. 当客户端再次访问时,会在请求头中加上之前读取内容的修改时间和ETag,如下图所示,服务器会根据ETag和Last-modified判断内容最近有没有修改过。如果没有修改,则返回304状态码,如果修改过,则把最新内容返回客户端,状态码则是200。
  3. 所以有时候服务器相关日志文件、CDN日志文件和OSS日志文件都会有304状态码,这属于正常情况,说明缓存中已经存在这些内容,并且在此期间中这些内容并没有修改,如果想更新缓存,可以按 Ctrl + F5 键,客户端会清除缓存,重新向服务器发送请求,服务器则返回请求内容,并且状态码是200。
    如果您有其他问题,可以联系汉中创云互联阿里云代理商,为您提供一对一专业全面的技术服务,同时新老阿里云会员,均可享受我公司代理商价格,欢迎咨询欢迎咨询.gif

 

本公司销售:阿里云、腾讯云、百度云、天翼云、金山大米云、金山企业云盘!可签订合同,开具发票。

我有话说: