缓存控制http标头

时间:2015-08-13 05:40:15

标签: http caching header

我遇到了http标头问题 - 缓存控制:max-age = 1234 我的消息来源有头,但任何方式发送请求和接收304.我需要可能是我错过了什么? 还有一个,除缓存控制之外的源:max-age = 1234 in" response headers"有缓存控制:"请求标题"中的max-age = 0,可能会影响它。

我的资源响应标头之一,例如:

  1. 远程地址:10.6.237.13:443请求请求方法:GET状态     代码:304未修改

    1. 响应标头:查看源Cache-Control:max-age = 5184000 连接:Keep-Alive日期:星期四,2015年8月13日05:31:29 GMT 到期日:星期一,2015年10月12日05:31:29 GMT Keep-Alive:超时= 30,最大= 98 服务器:Apache / 2.2.9(Win32)mod_jk / 1.2.37 mod_ssl / 2.2.9 OpenSSL / 1.0.2d Vary:Accept-Encoding,User-Agent
    2. 请求标题: 查看源接受:image / webp, / ; q = 0.8 Accept-Encoding:gzip,deflate,sdch Accept-Language:en-US,en; q = 0.8 Cache-Control:max-age = 0连接:keep-alive 饼干:JSESSIONID = 2D90E37C3627CE74F7ABF63BC3C023F1.dev; _gat = 1; _ga = GA1.2.344051414.1437552094主持人:demo.vts.epam.com If-Modified-Since:Wed,2015年8月12日13:49:06 GMT Pragma:no-cache Referer User-Agent:Mozilla / 5.0(Windows NT 6.3; WOW64) AppleWebKit / 537.36(KHTML,与Gecko一样)Chrome / 44.0.2403.130 Safari浏览器/ 537.36

2 个答案:

答案 0 :(得分:0)

这实际上取决于你打开链接的方式。

i)如果您使用F5刷新页面,则浏览器会向服务器发送条件请求以检查资源是否已被修改。

ii)按Control + F5就像无条件刷新页面的所有内容,无论现金如何。

iii)如果您只是在URL栏中按ENTER键,那么浏览器将从其缓存中获取该页面,并且在max-age指令到期之前不会请求服务器。

答案 1 :(得分:0)

我遇到了同样的问题,并在HTTP Cache Manager Documentation

上找到了原因

"不会缓存带有Vary标头的响应。"这是你的情况。

我还没有找到解决方案,除了不使用"检索所有嵌入式资源" (在HTTP Request advanced中)并逐个发送我的每个请求......

也许它可以提供帮助! THX