我在客户端进行以下缓存配置:
<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" />
但有些浏览器甚至不会下载标题。
答案 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>
为您不想缓存的所有路径添加一组类似的配置。