首先对测试环境进行说明

测试的架构如图所示:

client端  <------------------>   nginx cache <------------------>源服务器

经过大量测试发现:nginx的过期顺序是有一个优先级的。下面首先说明各个影响缓存过期的因素:

(1)inactive:在proxy_cache_path配置项中进行配置,说明某个缓存在inactive指定的时间内如果不访问,将会从缓存中删除。

(2)源服务器php页面中生成的响应头中的Expires,生成语句为:

header("Expires: Fri, 07 Sep 2013 08:05:18 GMT");

(3)源服务器php页面生成的max-age,生成语句为:

header("Cache-Control: max-age=60");

(4)nginx的配置项 proxy_cache_valid:配置nginx cache中的缓存文件的缓存时间,如果配置项为:proxy_cache_valid 200 304 2m;说明对于状态为200和304的缓存文件的缓存时间是2分钟,两分钟之后再访问该缓存文件时,文件会过期,从而去源服务器重新取数据。
评论(0) 引用(0) 阅读(40034)
分页: 1/1 第一页 1 最后页 [ 显示模式: 摘要 | 列表 ]