Apache mod_expires与Cache-Contro让数据在客户端缓存

Apache中的mod_expires.c模块可以使指定文件缓存到客户的电脑上,这样这些文件不必每一次都重新访问服务器,从而节省大量的服务器资源,使访问速度也加快了N多

<IfModule mod_expires.c>
ExpiresActive on

#now 立即访问服务器,不缓存
ExpiresByType application/xml            "now"
ExpiresByType application/xhtml+xml        "now"

ExpiresByType application/javascript    "access plus 30 days"    
ExpiresByType application/json        "access plus 30 days"
ExpiresByType application/pdf            "access plus 30 days"
ExpiresByType application/rss+xml    "access plus 30 days"
ExpiresByType application/x-bzip        "access plus 30 days"
ExpiresByType application/x-bzip2    "access plus 30 days"
ExpiresByType application/x-compress    "access plus 30 days"
ExpiresByType application/x-gtar    "access plus 30 days"
ExpiresByType application/x-gzip        "access plus 30 days"
ExpiresByType application/x-sh        "access plus 30 days"
ExpiresByType application/x-shockwave-flash    "access plus 30 days"
ExpiresByType application/x-tar            "access plus 30 days"
ExpiresByType application/xml-dtd        "access plus 30 days"
ExpiresByType application/xml-external-parsed-entity "access plus 30 days"
ExpiresByType application/zip            "access plus 30 days"
ExpiresByType image/bmp                "access plus 30 days"
ExpiresByType image/gif                "access plus 30 days"
ExpiresByType image/ief                "access plus 30 days"
ExpiresByType image/jpeg            "access plus 30 days"
ExpiresByType image/png                "access plus 30 days"
ExpiresByType image/x-icon            "access plus 30 days"
ExpiresByType text/css                "access plus 30 days"
ExpiresByType text/csv                "access plus 30 days"
ExpiresByType text/html              "access plus 30 days"
ExpiresByType text/plain            "access plus 30 days"
ExpiresByType text/x-c                        "access plus 30 days"
ExpiresByType text/x-java-source            "access plus 30 days"
ExpiresByType application/pdf                   "access plus 30 days"

ExpiresDefault "now"
</IfModule>

[注意]
1) 打开新窗口
     如果cache-control的值为private、no-cache、must-revalidate,那么打开新窗口访问时都会重新访问服务器。
      而如果指定了max-age值,那么在此值内的时间里就不会重新访问服务器,例如:Cache-control: max-age=5 表示当访问此网页后的5秒内再次访问不会去服务器

2) 在地址栏回车
    如果cache-control值为private或must-revalidate(和网上说的不一样),则只有第一次访问时会访问服务器,以后就不再访问。
    如果cache-control值为no-cache,那么每次都会访问。
    如果cache-control值为max-age,则在过期之前不会重复访问。

3) 按后退按扭
   如果cache-control值为private、must-revalidate、max-age,则不会重访问,而如果为no-cache,则每次都重复访问

4) 按刷新按扭
     无论为何值,都会重复访问

你可能感兴趣的:(apache,mod_expires,Cache-Contro)