Max-age和Expires的区别
Expires
Expires
是HTTP/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
时,过期为600
秒
Expires=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
。
多抽出1分钟来学习,让你的生命更加精彩!