Sha*_*oux 6 apache .htaccess caching
好的,我查了很多关于如何用htaccess文件管理浏览器缓存的网站,但对我来说还是不太清楚.
我想缓存特定文件一个月.对于其他人,我希望每次都能刷新它.所以我尝试过:
<IfModule mod_headers.c>
Header unset Cookie
Header unset Set-Cookie
#Header set Cache-Control "max-age=31536000"
Header unset Cache-Control
Header unset ETag
FileETag none
</IfModule>
<IfModule mod_expires.c>
ExpiresActive On
ExpiresDefault "now"
<Files "/css/jquery-ui.css">
ExpiresDefault "access plus 1 month"
</Files>
<Files "/js/jquery-1.10.2.min.js">
ExpiresDefault "access plus 1 month"
</Files>
<Files "/js/jquery-ui.js">
ExpiresDefault "access plus 1 month"
</Files>
<Files "/js/analytics.js">
ExpiresDefault "access plus 1 month"
</Files>
<Files "/matheos/img/*">
ExpiresDefault "access plus 1 month"
</Files>
<Files "/img/*">
ExpiresDefault "access plus 1 month"
</Files>
</IfModule>
Run Code Online (Sandbox Code Playgroud)
但它显然不能完全按预期工作... html正确没有缓存,但对于其他文件,它似乎并不正确.我想要不缓存的文件似乎被缓存了15分钟(好吧,我可以活下来,但为什么?...),而对于其他的,我不能确定.我认为它们可能被正确缓存,但我怎么知道呢?
无论如何,这个htaccess对你来说好吗?
非常感谢你的帮助.我接受任何建议;)
好的,我知道了 !要定位特定文件,正确的语法是:
#to not cache css except jquery-ui.css
ExpiresByType text/css "now"
<FilesMatch "jquery-ui\\.css$">
ExpiresByType text/css "access plus 1 month"
</FilesMatch>
Run Code Online (Sandbox Code Playgroud)
这是唯一对我有用的方法,至少在ovh共享主机的情况下.我也尝试过与ExpiresDefault的所有可能组合,但它不起作用......