http缓存

http缓存:
网站中的图片,第一次请求:200 ok
第二次请求返回:304  未修改 表示使用缓存中的图片
一个图片发送到客户端,会把图片传给客户端,而且还在响应信息中有一个Etag和Last-Madified头信息,
相当于图片的指纹,Etag表示的是图片的身份证,Last-Modified表示最后修改时间 第二次访问的请求头:If-Modified-Since:上次响应的Last-Mododified值 If-None-Match:上次的Etag值,作用是比较是否是一张图片 是一张图片,而且最后修改时间一致,就会返回状态码Status Code :304代表浏览器可以从本地去缓存,
这样服务器就可以不用重新传送信息,就会减轻服务器负担,节省时间

服务器如何控制缓存

在主服务器,打开Apache的expires扩展,利用该扩展控制图片是否缓存,缓存多少时间
还要书写.htaccess文件,具体写法可以参照Apache手册mod_expires

 .htaccess文件

例如:
ExpiresActive  On
ExpiresBytype image/jpeg  "access plus 30 days"
如何不缓存:
请求信息添加头信息:Cache-Control: no-store,must-revalidate
也可以利用Apache的header模块实现不缓存
开启header模块
在.htaccess文件中添加
<FilesMatch   ".(gif)$">
    header set Cache-Control "no-store,must-revalidate"
</FilesMatch>

  //表示gif图片不缓存

原文地址:https://www.cnblogs.com/lzzhuany/p/4851570.html