首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

CDN加速后源站本来有的etag字段消失了,这是什么问题?

CDN加速后源站本来有的etag字段消失了,可能是由于多种原因导致的。以下是一些可能的原因和解决方案:

  1. CDN缓存未正确设置:检查CDN的设置,确保CDN缓存正确设置,并且没有禁用etag响应头。Etag是HTTP协议中的一个头字段,它告诉客户端服务器上文件的更新时间。如果CDN缓存未正确设置,则可能会导致etag字段消失。
  2. CDN节点缓存过期:CDN节点会缓存网站的静态资源,但是缓存是有过期时间的。如果CDN节点上的缓存过期,则可能会导致etag字段消失。可以通过增加CDN缓存的过期时间来解决。
  3. CDN节点负载均衡:CDN节点之间需要进行负载均衡,以确保每个节点都能够处理客户端的请求。如果CDN节点负载不均衡,则可能会导致etag字段消失。可以通过增加CDN节点的数量来解决。
  4. CDN节点网络问题:CDN节点需要与源站进行网络通信,如果CDN节点网络出现问题,则可能会导致etag字段消失。可以通过检查CDN节点的网络连接来解决。
  5. 源站配置问题:检查源站的配置,确保源站正确设置了etag响应头。如果源站未正确设置etag响应头,则CDN节点可能会无法获取到etag值,从而导致etag字段消失。
  6. CDN厂商限制:部分CDN厂商可能会限制etag的使用,从而导致etag字段消失。可以联系CDN厂商确认是否限制了etag的使用。 如果以上方法都无法解决问题,可能需要联系CDN厂商的技术支持,以进一步排查问题。
页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

CDN 最佳实践】CDN 命中率优化思路

控制台命中率监控示意图 在CDN的请求日志中,CDN记录了所有的CDN请求的缓存命中状态,详细的日志格式请参考CDN日志格式,其中“cache命中状态”字段为HIT即表示命中,而MISS即表示未命中的状态...静态资源由于长时间不会发生变化,因此可以使用CDN加速;而动态资源因为需要实时获取的资源并且可能源加载需要一段时间(CDN获取数据有严格的的回超时时间,动态文件响应较慢可能导致CDN直接抛出...刷新功能是指将特定URL或者目录下的所有历史缓存的内容清除掉,该操作常用于进行同名更新导致CDN缓存内容已为历史脏数据,刷新将使URL下次访问时直接回。因此会导致命中率下降。...预热可以提前将资源预热到CDN的L2节点,避免业务高峰对于产生压力,也同时保证CDN的真实命中率。...而在CDN同时配置缓存规则时是会以CDN上的缓存规则优先的(除非设置不允许缓存的规则),因此建议用户在CDN控制台中设置合理的缓存规则,避免走默认的缓存规则导致频繁回(默认缓存经常缓存3600

3.1K20

CDN缓存的理解

中心层保存加速域名的相关配置信息比如域名,也缓存加速域名下的各种资源,在边缘层节点未命中缓存时,需要向中心层节点发起请求,而中心层节点未能命中缓存时,需要查找对应的域名,并向该域名发起请求...到服务提供商添加该域名,并设置域名,例如是www.example.com。 此时服务商一般会分配一个CNAME地址,例如是cdn.example.com.service.com。...或者服务商在第一步即提供CNAME地址,那么直接解析即可。 访问流程 简单的CDN的访问流程,这是一种pull的方式拉取缓存: 访问资源时,从上述的子域名中加载资源文件,DNS解析该域名。...获得CNAME域名对应的IP地址,指向CDN边缘层节点。 CDN边缘层节点未命中资源缓存,则向中心层节点请求。 中心层节点未命中资源缓存,则进行回,到域名服务器获取资源。...ETag If-None-Match Etag就像一个指纹,资源变化都会导致ETag变化,跟最后修改时间没有关系,ETag可以保证每一个资源是唯一的,If-None-Match的请求头字段会将上次返回的

3K41
  • 从前端角度理解缓存

    从字面理解,强制缓存的方式简单粗暴,给cache设置过期时间,超过这个时间之后cache过期需要重新请求。上述字段中的expires与cache-control中的max-age都属于强制缓存。...cache-control: max-age 为了解决expires存在的问题,Http1.1版本中提出了cache-control: max-age,该字段与expires的缓存思路相同,都是设置一个过期时间...ETag ETag是对资源的特殊标识 Etag: W/"e563df87b65299122770e0a84ada084f" 请求该资源成功之后,将返回的ETag存入if-none-match字段中(浏览器自动记录了该字段信息...CDN缓存 CDN边缘节点缓存策略因服务商不同而不同,但一般都会遵循http标准协议,通过http响应头中的Cache-control: max-age的字段来设置CDN边缘节点数据缓存时间。...当客户端向CDN节点请求数据时,CDN节点会判断缓存数据是否过期,若缓存数据并没有过期,则直接将缓存数据返回给客户端;否则,CDN节点就会向发出回请求,从拉取最新数据,更新本地缓存,并将最新数据返回给客户端

    59610

    从前端角度理解缓存缓存是怎么回事缓存的类型缓存存储在哪薄荷应用CDN缓存如何合理应用缓存

    从字面理解,强制缓存的方式简单粗暴,给cache设置过期时间,超过这个时间之后cache过期需要重新请求。上述字段中的expires与cache-control中的max-age都属于强制缓存。...cache-control: max-age 为了解决expires存在的问题,Http1.1版本中提出了cache-control: max-age,该字段与expires的缓存思路相同,都是设置一个过期时间...ETag ETag是对资源的特殊标识 Etag: W/"e563df87b65299122770e0a84ada084f" 请求该资源成功之后,将返回的ETag存入if-none-match字段中(浏览器自动记录了该字段信息...CDN缓存 CDN边缘节点缓存策略因服务商不同而不同,但一般都会遵循http标准协议,通过http响应头中的Cache-control: max-age的字段来设置CDN边缘节点数据缓存时间。...当客户端向CDN节点请求数据时,CDN节点会判断缓存数据是否过期,若缓存数据并没有过期,则直接将缓存数据返回给客户端;否则,CDN节点就会向发出回请求,从拉取最新数据,更新本地缓存,并将最新数据返回给客户端

    1.1K20

    前端缓存技术概述

    可以保证新新范围的请求和前一个请求来自相同的ETag不一致,那就说明资源不一致咯)。...讲到这里,就应该对CDN有个模糊的概念:这以前没有CDN的时候,直接请求,现在有CDN,那么请求肯定会被转发到其他服务器,而且这个服务器中的资源可能是一个资源的拷贝。...咱们可以称这个服务器为 CDN节点 。 CDN缓存是指,存在一个缓存服务器,当浏览器向服务器请求资源时,并不是直接向服务器请求,而是被导向CDN边缘节点。...在这个边缘节点中缓存用户的数据以及服务器资源,他(边缘cache)负责直接响应最终用户的访问请求,将缓存在本地的内容迅速提供给用户。...同时,既然缓存服务器的资源,那么就会涉及到资源的一致性,即保证边缘节点与服务器内容同步。

    1.6K30

    缓存策略

    当客户端向CDN节点请求数据时,CDN节点会判断缓存数据是否过期,若缓存数据并没有过期,则直接将缓存数据返回给客户端;否则,CDN节点就会向发出回请求(back to the source request...),从拉取最新数据,更新本地缓存,并将最新数据返回给客户端。...若CDN缓存时间较短,CDN边缘节点上的数据会经常失效,导致频繁回,增加了的负载,同时也增大的访问延时;若CDN缓存时间太长,会带来数据更新时间慢的问题。...这样开发者在更新数据,可以使用“刷新缓存”功能来强制CDN节点上的数据缓存过期,保证客户端在访问时,拉取到最新的数据。...CDN的优势 CDN节点解决跨运营商和跨地域访问的问题,访问延时大大降低; 大部分请求在CDN边缘节点完成,CDN起到了分流作用,减轻的负载。

    98210

    缓存策略

    当客户端向CDN节点请求数据时,CDN节点会判断缓存数据是否过期,若缓存数据并没有过期,则直接将缓存数据返回给客户端;否则,CDN节点就会向发出回请求(back to the source request...),从拉取最新数据,更新本地缓存,并将最新数据返回给客户端。...若CDN缓存时间较短,CDN边缘节点上的数据会经常失效,导致频繁回,增加了的负载,同时也增大的访问延时;若CDN缓存时间太长,会带来数据更新时间慢的问题。...这样开发者在更新数据,可以使用“刷新缓存”功能来强制CDN节点上的数据缓存过期,保证客户端在访问时,拉取到最新的数据。...CDN的优势 CDN节点解决跨运营商和跨地域访问的问题,访问延时大大降低; 大部分请求在CDN边缘节点完成,CDN起到了分流作用,减轻的负载。

    1.7K80

    干货 | 记一次跨域配置引发的思考

    本文主要记录一次静态资源服务更新跨域策略,引发的客户端跨域请求失败的案例。 如果对跨域不太熟悉的同学,可以阅读一下MDN HTTP访问控制(CORS)这篇文章。相关概念在本文中就不再做赘述。...头部” 这里W供应商这里有一个致命的逻辑错误:当用If-None-Match请求时,返回了304。...这代表body没有改变,但同时返回了正确的Access-Control-Allow-Origin的头给到CDN。然而CDN并没有替换给到的头,而是直接读取一个缓存中错误的头。...虽然我们遵循HTTP的标准,但是CDN没有遵循,导致返回给用户的响应头出错了。...与CDN供应商排查许久未果,最终迫不得已还是修改了引用的URL地址(例如加一个query字段,虽然不优雅,但至少能暂时解决问题)。所以保证资源的唯一性还是很有必要的。

    69331

    CDN故障案例content-encoding深入分析

    故障现象: 同事反映在AWS的s3增加自定义header: Content-Encoding:gzip,通过AWS 的cdn(cloudfront)加速,chrome浏览器发现无法打开。...到此,自定义header "Content-Encoding: gzip" 导致chrome报错的原因算是定位到了:由于没有开启gzip, cdn的时候返回的是非压缩的数据,但是添加了自定义...变化 压缩请求response的Etag,content-encoding变化 CDN的缓存规则: proxy_cache_key hosturiis_argsargs, CDN完全透传请求头到(...cdn节点都不开启gzip_vary, cdn节点都开启gzip 2....cdn节点开启gzip_vary,cdn节点都开启gzip 3. cdn节点开启gzip_vary,不开启gzip_vary, cdn节点开启gzip, 站开启gzip, 4. cdn

    2.3K20

    节点缓存VS浏览器缓存

    若文件缓存未过期,但更新并希望用户立即访问到新文件,可提交刷新操作,强制清除CDN缓存,触发回拉取。...协商缓存:强制缓存失效,浏览器携带缓存标识向服务器发起请求,一般是使用 if-modified-since/Last-Modified 和 if-none-match/Etag 由服务器来决定浏览器缓存的资源是否可以使用...image.png (3)绑定测试,无Cache-Control 相关的缓存头部。 为何CDN节点会缓存住该文件?...客户反馈的url,未命中配置的规则,且无 Cache-Control 字段,则CDN节点会缓存600s。 2、确认域名vodtest.xiaobli.xyz的浏览器缓存策略。...一般情况下这2个头部都是继承的,CDN侧不会进行修改。客户反馈的这个url,没有这2个头部,按理应该不缓存。

    1.3K81

    JS篇(014)-一次js请求一般情况下有哪些地方会有缓存处理?

    并且它会为缓存设定一个失效时间 (例如N小时),在这N小时之内,当你再次访问这个网站时,系统就会直接从你电脑本地的DNS缓存中把结果交还给你,而不必再去询问DNS服务器,变相“加速网址的解析。...所以,当你修改了 DNS 服务器,并且不希望电脑继续使用之前的DNS缓存时,就需要手动去清除本地的缓存。...CDN便会检测被请求的数据是否过期,如果没有过期,就返回数据给客户端,如果过期,CDN再向发送请求获取新数据。和买家买货,卖家没货,卖家再进货一个道理^^。...CDN边缘节点缓存机制,一般都遵守http标准协议,通过http响应头中的Cache-Control和max-age的字段来设置CDN边缘节点的数据缓存时间。...浏览器缓存主要有两类:缓存协商:Last-modified ,Etag 和彻底缓存:cache-control,Expires。浏览器都有对应清除缓存的方法。

    82810

    【性能】688- 前端性能优化——从 10 多秒到 1.05 秒

    减少网络请求次数 减小文件体积 使用 CDN 加速 所以压缩、合并就是一个解决方案,当然可以用 gulp 、 webpack 、 grunt 等构建工具压缩、合并。.../public/dist/')); }); 然后,再把 压缩、合并 的 JS、CSS 放入 CDN,?看看效果如何: 以上是 lishaoy.net 清除缓存的首页请求速度。...public: 可以被所有的用户缓存,包括终端用户和 CDN 等中间代理服务器。 private: 只能被终端用户的浏览器缓存,不允许 CDN 等中继缓存服务器对其缓存。...这是原生APP 本来就支持的功能,这也是相比于 web app ,原生 app 更受青睐的主要原因。 再来看看 ?...5、监听 service worker 现在我们已经将你的站点资源缓存,你需要告诉 service worker 让它用这些缓存内容来做点什么。有 fetch 事件,这是很容易做到的。

    1.3K21

    谈谈前端性能优化-面试版_2023-02-27

    刷新页面可以看到,请求头中携带了Cookie信息BDUSS: 这样服务器就知道这是已经登录的用户。...(客户端)和CDN服务器; 其中浏览器属于private类型缓存设备,表示只有浏览器才可以对资源进行缓存; CDN服务器属于public类型缓存设备,这种设备可以对服务器上的资源进行缓存。...如下图所示,该资源设定字段,浏览器既不会使用浏览器缓存,也不会向服务器请求资源,而是向public类型的缓存设备(如CDN服务器)请求资源: private 服务器端可以通过该属性指定某一资源只能被浏览器...Expires字段 这是http1.0的规范;它的值为一个绝对时间的GMT(格林威治标准时间)格式时间字符串,如Mon, 10 Jun 2015 21:31:12 GMT; 该字段指定浏览器缓存资源的过期时间...,那么这台CDN服务器就要向它的上一级缓存服务器请求内容,直至追溯到网站的服务器将内容拉到本地; 应用场景 网站站点/应用加速: 站点或者应用中大量静态资源的加速分发,建议将站点内容进行动静分离,

    78160

    谈谈前端性能优化-面试版

    刷新页面可以看到,请求头中携带了Cookie信息BDUSS:这样服务器就知道这是已经登录的用户。...(客户端)和CDN服务器;其中浏览器属于private类型缓存设备,表示只有浏览器才可以对资源进行缓存;CDN服务器属于public类型缓存设备,这种设备可以对服务器上的资源进行缓存。...如下图所示,该资源设定字段,浏览器既不会使用浏览器缓存,也不会向服务器请求资源,而是向public类型的缓存设备(如CDN服务器)请求资源:private服务器端可以通过该属性指定某一资源只能被浏览器...Expires字段这是http1.0的规范;它的值为一个绝对时间的GMT(格林威治标准时间)格式时间字符串,如Mon, 10 Jun 2015 21:31:12 GMT;该字段指定浏览器缓存资源的过期时间...,那么这台CDN服务器就要向它的上一级缓存服务器请求内容,直至追溯到网站的服务器将内容拉到本地;应用场景网站站点/应用加速: 站点或者应用中大量静态资源的加速分发,建议将站点内容进行动静分离,动态文件可以结合云服务器

    1.2K10

    谈谈前端性能优化-面试版

    刷新页面可以看到,请求头中携带了Cookie信息BDUSS:这样服务器就知道这是已经登录的用户。...如下图所示,该资源设定字段,浏览器既不会使用浏览器缓存,也不会向服务器请求资源,而是向public类型的缓存设备(如CDN服务器)请求资源:private服务器端可以通过该属性指定某一资源只能被浏览器...,那么这台CDN服务器就要向它的上一级缓存服务器请求内容,直至追溯到网站的服务器将内容拉到本地;应用场景网站站点/应用加速: 站点或者应用中大量静态资源的加速分发,建议将站点内容进行动静分离,动态文件可以结合云服务器...刷新页面可以看到,请求头中携带了Cookie信息BDUSS:这样服务器就知道这是已经登录的用户。...,那么这台CDN服务器就要向它的上一级缓存服务器请求内容,直至追溯到网站的服务器将内容拉到本地;应用场景网站站点/应用加速: 站点或者应用中大量静态资源的加速分发,建议将站点内容进行动静分离,动态文件可以结合云服务器

    1.2K20

    谈谈前端性能优化--面试版

    刷新页面可以看到,请求头中携带了Cookie信息BDUSS:这样服务器就知道这是已经登录的用户。...(客户端)和CDN服务器;其中浏览器属于private类型缓存设备,表示只有浏览器才可以对资源进行缓存;CDN服务器属于public类型缓存设备,这种设备可以对服务器上的资源进行缓存。...如下图所示,该资源设定字段,浏览器既不会使用浏览器缓存,也不会向服务器请求资源,而是向public类型的缓存设备(如CDN服务器)请求资源:private服务器端可以通过该属性指定某一资源只能被浏览器...Expires字段这是http1.0的规范;它的值为一个绝对时间的GMT(格林威治标准时间)格式时间字符串,如Mon, 10 Jun 2015 21:31:12 GMT;该字段指定浏览器缓存资源的过期时间...,那么这台CDN服务器就要向它的上一级缓存服务器请求内容,直至追溯到网站的服务器将内容拉到本地;应用场景网站站点/应用加速: 站点或者应用中大量静态资源的加速分发,建议将站点内容进行动静分离,动态文件可以结合云服务器

    73260

    谈谈前端性能优化-面试版

    刷新页面可以看到,请求头中携带了Cookie信息BDUSS:这样服务器就知道这是已经登录的用户。...(客户端)和CDN服务器;其中浏览器属于private类型缓存设备,表示只有浏览器才可以对资源进行缓存;CDN服务器属于public类型缓存设备,这种设备可以对服务器上的资源进行缓存。...如下图所示,该资源设定字段,浏览器既不会使用浏览器缓存,也不会向服务器请求资源,而是向public类型的缓存设备(如CDN服务器)请求资源:private服务器端可以通过该属性指定某一资源只能被浏览器...Expires字段这是http1.0的规范;它的值为一个绝对时间的GMT(格林威治标准时间)格式时间字符串,如Mon, 10 Jun 2015 21:31:12 GMT;该字段指定浏览器缓存资源的过期时间...,那么这台CDN服务器就要向它的上一级缓存服务器请求内容,直至追溯到网站的服务器将内容拉到本地;应用场景网站站点/应用加速: 站点或者应用中大量静态资源的加速分发,建议将站点内容进行动静分离,动态文件可以结合云服务器

    72110

    这就是CDN原理和CDN多级缓存啊!

    ,这样即使的ip变化了,也不影响原有的配置。...spm=a2c4e.11153987.0.0.419f6ec5UvPSJ1 CDN本来是给我们的网站加速的,但是有时会因为不合适的回策略给服务器带来负担,只有选择正确的策略才能给自己的网站带来更高的访问效率...CDN系统中,中心层负责全局的管理和控制,同时也保存最多的内容Cache。在边缘层设备未能命中Cache时,需要向中心层设备请求;而中心层未能命中时,则需要向请求。...CDN缓存 浏览器本地缓存失效,浏览器会向CDN边缘节点发起请求。类似浏览器缓存,CDN边缘节点也存在着一套缓存机制。...CDN缓存策略 CDN边缘节点缓存策略因服务商不同而不同,但一般都会遵循http标准协议,通过http响应头中的Cache-control: max-age的字段来设置CDN边缘节点数据缓存时间。

    16K80

    彻底弄懂浏览器缓存策略

    Cache-Control:HTTP1.1提出的特性,为了弥补 Expires 缺陷加入的,提供更精确细致的缓存功能。...ETag与If-None-Match是一对报文头,属于http 1.1。ETag是一个响应首部字段,它是根据实体内容生成的一段hash字符串,标识资源的状态,由服务端产生。...如果请求资源时在请求首部加上这个字段,值为之前服务器端返回的资源上的ETag,则当且仅当服务器上没有任何资源的ETag属性值与这个首部中列出的时候,服务器才会返回带有所请求资源实体的200响应,否则服务器会返回不带实体的...ETag能解决什么问题? a. Last-Modified标注的最后修改只能精确到秒级,如果某些文件在1秒钟以内,被修改多次的话,它将不能准确标注文件的新鲜度 b....CDN节点的磁盘 X-Cache-Lookup:Hit From Upstream 表示没有命中CDN ?

    2.5K30

    网站性能优化实战——从12.67s到1.06s的故事

    而控制缓存存放位置的,不是别人,就是我们在服务器上设置的Etag字段。在浏览器接收到服务器响应,会检测响应头部(Header),如果有Etag字段,那么浏览器就会将本次缓存写入硬盘中。...为了降低web压力,CDN系统会遵循Cache-Control和Expires HTTP头标准对改请求返回的内容进行缓存,便于后面的请求不在回,起到加速功能。...而传统CDN(Web与CDN共用域名)的方式,需要对不同类型的文件设置相应的Cache规则或者遵循后端的HTTP头,但这样难以发挥CDN的最大优势,因为动态请求回的概率非常之大,如果访客与的线路并不慢...,通过CDN的请求未必快于直接请求的。...不过这样一来,新的问题就出现CDN域名与主域名不同,DNS解析CDN域名还需要花费额外的时间,增加网络延迟。不过这难不住我们伟大的程序员前辈,DNS Prefetch闪亮登场。

    1.1K30
    领券