1.
HTTP缓存机制: 截止 和 验证。
截止机制是指设置一个过期时间,当在这个过期时间内时,就不在联系源服务器,而直接通过squid里的缓存来响应请求
验证机制是指当超过过期时间后,squid是发送一个验证文件是否被修改的请求,如果没修改,返回304,如果修改了,则返回完整的文件
2.
age: 是指响应缓存在squid中停留的时间 max-age:是指响应缓存在squid停留的最大时间数
3.
if-modified-since 是指客户端向源站发出请求,询问源站自从某个时间起,文件是否被修改了,起始时间是客户端上次得到的last-modified时间
last-modified 是指源站服务器给出的响应,文件的最新修改时间
4.
etag 是源站给文件打的一个标签,类似于文件的md5值,用来唯一的标示文件
if-none-match 是客户端询问源站文件是否经过修改,和if-modifietd-since的效果一样,只不过etag更可靠
5.
如果在squid的配置中,添加了override-expire参数,则refresh_pattern生效起作用
如果在squid的配置中,没有添加override-expire参数,则源站的过期时间起作用,即apache或者nginx的配置起作用
6.
squid中refresh_pattern 的. (dot)符号是默认规则,匹配任何以上的不匹配的项
7.
精确控制缓存时间的配置方法:
refresh_pattern -i .html$ 2 100% 2 ignore-reload override-lastmod
解释: 忽略大小写,以html结尾的文件类型,精确控制缓存时间为2分钟,且忽略no-cache指令和覆盖lastmod指令
转载请注明:爱开源 » squid的一些知识点