gpt4 book ai didi

javascript - 仅对某些 css 和 javascript 文件利用浏览器缓存

转载 作者:行者123 更新时间:2023-11-28 07:25:25 25 4
gpt4 key购买 nike

有什么方法可以只通过 htaccess 文件对某些 css 和 javascript 文件进行浏览器缓存吗?我有三个 css 文件

http://www.example.com/css/main.css 
http://www.example.com/css/star_rating.css
http://www.example.com/js/jquery.autocomplete.css

“main.css”可能每天都在变化。我只想缓存 star_rating.css 和 jquery.autocomplete.css,而不是 main.css。我怎样才能做到这一点?

还有什么方法可以缓存 google adsense javascript 文件。

https://www.gstatic.com/swiffy/v7.1/runtime.js 
http://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js
https://pagead2.googlesyndication.com/pagead/osd.js

最佳答案

在 .htaccess 中的 HTTP 响应中设置缓存控制 header ,已在此处回答:How can i add cache control code to htaccess?

您将需要一个后续规则来将 main.css 的缓存间隔减少到您需要的任何值。然而,在你继续之前......

就个人而言,我不会为如此复杂的粒度而烦恼,只需设置您的缓存时间,以便在典型的浏览 session (24 小时?)中只请求一次资源。尽管某些浏览器缓存可能相当大,但不能保证忙碌的用户在下次访问您的站点时仍会缓存您的资源,如果他们填满了缓存,则将删除频率较低/过时的元素。

对于长期缓存策略,我会检查 ETag 支持是否在您的服务器上正常工作。如果浏览器已经缓存了您的某个元素,它将使用“If Not Modified” header 进行请求,并提供它为您的资源保留的 ETag。

如果资源未被修改(如果 ETag 值匹配),您的服务器将以 304(未修改)而不是 200 响应,这对于大型资源来说是一个很好的节省。

如果热链接到 Google AdSense JavaScript 文件而不是自己托管它们,则您无法影响响应 header ,但无论如何我希望它们应该具有合理的缓存控制 header (由 Google 设置)。

关于javascript - 仅对某些 css 和 javascript 文件利用浏览器缓存,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31851278/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com