ExpiresByType除了某些路径

时间:2016-05-07 06:48:59

标签: apache

我在客户端进行以下缓存配置:

<IfModule mod_expires.c>
ExpiresActive On
ExpiresByType text/html "modification plus 2 weeks"
ExpiresByType image/jpg "modification plus 2 weeks"
ExpiresByType image/jpg "modification plus 2 weeks"
ExpiresByType image/jpeg "modification plus 2 weeks"
ExpiresByType image/gif "modification plus 2 weeks"
ExpiresByType image/png "modification plus 2 weeks"
ExpiresByType text/css "modification plus 2 weeks"
ExpiresByType application/javascript "modification plus 2 weeks"
ExpiresByType application/x-javascript "modification plus 2 weeks"
ExpiresByType application/x-shockwave-flash "modification plus 2 weeks"
ExpiresByType image/x-icon "modification plus 2 weeks"
ExpiresDefault "modification plus 2 weeks"
</IfModule>

但是,有一些文件,例如我不想缓存的访客个人资料,因为访问者可以修改它。由于修改是通过数据库进行的,因此文件修改日期不会改变,因此“修改加上2周”将不起作用。

我想知道是否有任何方法可以阻止某些缓存路径。我尝试将以下元标记添加到我不想缓存的html文件中:

    <meta http-equiv="Cache-Control" content="no-cache" />
    <meta http-equiv="Pragma" content="no-cache" />

但有些浏览器甚至不会下载标题。         

1 个答案:

答案 0 :(得分:0)

在上述配置之后将以下内容添加到Apache配置中,以防止缓存/ login路径:

#Do not cache these files
<Location /login >
        Header set Cache-Control "max-age=0, no-cache, no-store, must-revalidate"
        Header set Pragma "no-cache" 
</Location>

为您不想缓存的所有路径添加一组类似的配置。