http - 网站如何更改已标有很长有效期的内容?
问题描述
如果服务器为资源设置了一个非常远的到期日期(例如 20 年后),然后在出现一些新需求后它决定必须更改资源,会发生什么情况?例如,某些网站的 CSS 文件似乎有很长的有效期。网站是否可以发送另一个标头来取消先前的缓存资源?
解决方案
不会。一旦你有一个很长的有效期,你不知道人们是否会在有效期之前继续使用它。
“改变”事物的方式通常分为两类:
创建一个唯一的文件名,以便对其进行版本控制。例如styles.57ab85ca183.css 而不是styles.css。或者styles.css?v=12345。这需要您参考代码中的特定版本,因此确实会增加一些复杂性,但有一些工具可以做到这一点。
有效期很短。这通常是人们对主页所做的事情(因为无法使用版本化路径更改该位置)。
推荐阅读
- android - 如何在 Firebase 身份验证服务器中添加私钥对
- c++ - 试图在列表中的某个索引处插入对象(C++)
- python - ValueError:无法为张量“Placeholder_1:0”提供形状(32、128、128)的值,其形状为“(?、128、128、1)”
- python - pynverse inversefunc:当原始函数有多个变量时,如何获得可逆函数?
- html - Spring Boot 和 Thymeleaf:更新 Bootstrap 进度条
- html - 3 列砂砾,中间有文本,向左列增长
- android - 如何将 DocumentReference 传递给 DetailActivity?
- mysql - 将相似的数据拆分为两个表?
- python - Selenium Webdriver :- 搜索选项的元素不可交互异常
- reactjs - 我无法获得 props.match.params.id。据说道具是未定义的