如何强制浏览器显示CSS文件的最新更改?

时间:2009-10-17 00:33:11

标签: php css caching

我对PHP网站上的CSS文件进行了一些更改。

在我按下 CTRL 键并单击浏览器的 REFRESH 按钮之前,我在任何浏览器中都没有显示更改。

这意味着大多数用户似乎不会做出我所做的更改。

如何强制浏览器立即显示CSS文件的更改(不重命名CSS文件)?

3 个答案:

答案 0 :(得分:13)

在链接样式表时添加唯一字符串作为查询字符串。这是一个例子

<link href="style.css?<?=filemtime("style.css")?>" rel="stylesheet" type="text/css" />

答案 1 :(得分:2)

这取决于您的网络服务器。 Apache可以设置为配置给定文件的最大缓存时间,我很确定IIS也可以这样做。

或者,FORCE卸载的常见解决方案是对CSS文件名进行版本化(Rails在内部执行此操作)。例如,style.css变为style-10162009.css

答案 2 :(得分:0)

你不能。

如果新CSS文件与旧文件名相同,则浏览器将使用缓存文件。这意味着您要么:

  1. 使用某种形式的`css_filename.css?version_number`
  2. 或使用新文件的其他名称
  3. 或者,正如您正在做的那样,并使用ctrl + F5