Nginx Cache-Control
转载自:Nginx缓存控制字段cache-control的配置 - OrcHome
参考:Nginx: using X-Accel-Expires with Cache-Control - Server Fault
Nginx:将X-Accel-Expires与Cache-Control一起使用 - 糯米PHP (nuomiphp.com)
HTTP协议的Cache -Control指定请求和响应遵循的缓存机制。在请求消息或响应消息中设置 Cache-Control并不会影响另一个消息处理过程中的缓存处理过程。
- 请求时的缓存指令包括: no-cache、no-store、max-age、 max-stale、min-fresh、only-if-cached等。
- 响应消息中的指令包括: public、private、no-cache、no- store、no-transform、must-revalidate、proxy-revalidate、max-age。
Cache-Control
设置相对过期时间, max-age指明以秒为单位的缓存时间. 若对静态资源只缓存一次, 可以设置max-age
的值为315360000000 (一万年). 比如对于提交的订单,为了防止浏览器回退重新提交,可以使用Cache-Control之no-store绝对禁止缓存,即便浏览器回退依然请求的是服务器,进而判断订单的状态给出相应的提示信息!
Http协议的cache-control的常见取值及其组合释义:
no-cache
: 数据内容不能被缓存, 每次请求都重新访问服务器, 若有max-age, 则缓存期间不访问服务器.no-store
: 不仅不能缓存, 连暂存也不可以(即: 临时文件夹中不能暂存该资源).private
(默认): 只能在浏览器中缓存, 只有在第一次请求的时候才访问服务器, 若有max-age, 则缓存期间不访问服务器.public
: 可以被任何缓存区缓存, 如: 浏览器、服务器、代理服务器等.max-age
: 相对过期时间, 即以秒为单位的缓存时间.no-cache
, private: 打开新窗口时候重新访问服务器, 若设置max-age, 则缓存期间不访问服务器.private
, 正数的max-age: 后退时候不会访问服务器.no-cache
, 正数的max-age: 后退时会访问服务器.
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 Bai's Blog!