有没有更好的方法来反映用户端更改的 CSS 代码,而不是告诉他们请清除缓存以查看更新? [复制]
Posted
技术标签:
【中文标题】有没有更好的方法来反映用户端更改的 CSS 代码,而不是告诉他们请清除缓存以查看更新? [复制]【英文标题】:Is there any Better way to reflect the changed CSS code on user end rather than telling them please clear your cache to see the update? [duplicate] 【发布时间】:2021-01-16 00:34:28 【问题描述】:我有一个网站。当我将某些内容更改为样式表时,效果不会落入用户的浏览器中。然后当他们清除缓存时,新样式表会反映到那时。所以每当我更新我的代码时,有没有更好的方法来反映该更改?
【问题讨论】:
这可以帮助你***.com/questions/1922910/… 将样式表的缓存控制标头设置为 5 分钟:developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Cache-Control 您使用什么编码语言?如果你使用php,可以根据修改日期filemtime()
在CSS文件中添加版本号。
【参考方案1】:
我的首选解决方案是将Cache-Control header 的最大年龄设置为 5 分钟。这样,在您的页面上导航的用户就不必每次都加载样式表,但当他们在一个小时后回来时,它会重新加载。
另一种方法是在每次更改样式表时在样式表 url 末尾增加一个版本号作为 get 参数:
<link href="/styles/home.css?version=1" rel="stylesheet">
当您增加版本号时,浏览器会认为它是不同的资源并重新加载它。
【讨论】:
以上是关于有没有更好的方法来反映用户端更改的 CSS 代码,而不是告诉他们请清除缓存以查看更新? [复制]的主要内容,如果未能解决你的问题,请参考以下文章