配置

说来简单,就是在Nginx里面这样写:

1
2
3
4
location / {
add_header Cache-Control no-cache;
# 其它的配置
}

这里的no-cacheno-store呈现效果相似,区别在下面。

no-cache

no-cache,被称为协商缓存,也就是会查一下服务器的资源和缓存资源是否相同,如果是就用缓存,不是就会重新获取。我这里做一个测试。

这是用no-cache配置后的两次请求:

首次请求

第二次请求

可以看出,它并不是不缓存,我现在把这个文章更新一下再截个图:

更新后的请求

又重新获取了,专业点描述是新鲜度校验,如果数据内容变化就重新获取。

no-store

重复刷新两次页面查看一下请求状态:

首次请求

第二次请求

由此可见,no-store是完全不缓存,那对于我们来说还是no-cache更胜一筹,网上说no-store主要是用来防止缓存一些敏感信息的。