# 06.Max-age和Expires

# 一、Expires

ExpiresHTTP/1.0中的,它比max-age要麻烦点。Expires指定的时间分下面二种,这个主要考虑到apache中设置是A还是M

1.相对文件的最后访问时间(Atime)Apache使用A时间来做Expires时.这样设置时,他就和max-age的值相等,因为max-age是相对文件的请求时间(Atime)。

例如:ExpiresByType text/html A600

由上面我们得知,Apache设置Atime时,过期为600秒时。 Expires=18:00+600=18:10 max-age=18:00+600=18:10 得出:Expires=max-age

2.绝对修改时间(MTime)

这又分二种情况,我们来拿A.htm来讲:假设文件的建立时间18:00

  • 当用户Request请求为18:00时,过期为600Expires=18:00+600=18:10 max-age=18:00+600=18:10 得出:Expires等于max-age

  • 当用户Request请求为18:20时,过期为600

    Expires=18:00+600=18:10(因为设置成Mtime时,时间由文件建立时间来决定) max-age=18:20+600=18:30 得出:Expires不等于max-age

即:当使用MTime时,Expires的初始值为文件创建时间;而Max-age的初始值为客户端请求数据的时间.

另外要注意,像上面这种清况时,max-age优化,所以过期时间为18:30

最后更新于: 2020年6月13日星期六晚上7点32分