如果名称或内容发生变化,是否浏览了缓存文件?

时间:2012-06-21 02:11:05

标签: caching browser browser-cache expires-header

对于给定文件(.js,.css等)的情况,我想知道两个一般问题,你已经设置了一个过期的标题,还有你没有:

  1. 只有当文件名称发生变化时,浏览器才会请求新文件(不提供缓存的文件)吗?浏览器也不评估文件内容,对吗?

  2. 所有浏览器在问题#1上的行为是否相同,或者已知它们之间存在差异,例如在移动设备上(iOS safari等)?

    < / LI> 谢谢你, 添

1 个答案:

答案 0 :(得分:2)

  1. 除非下载文件,否则浏览器无法检查文件内容。 (例如,浏览器不会请求校验和)。它通常将内容检查(或时间戳检查)的任务委托给服务器。浏览器将发送带有时间戳的if-modified-since标头。网络服务器将检查文件是否已更改,如果没有,它将发送304未修改的代码。

  2. 所有浏览器都遵循此基本协议。服务器决定文件是否发生变化的方式可能不同。