防止缓存 CSS 文件

2022-08-30 22:02:33

我正在使用PHP开发一个简单的网站。

开发配置 : WAMP

生产配置:灯具

在测试时,我更改了我的CSS文件,但是当我重新加载页面时,我的浏览器(不确定)仍然使用旧的缓存css。

我做了一些谷歌搜索,发现了我已经尝试过的不同解决方案

  • 在 css 末尾追加查询css/main.css?78923
  • 使用(在 Firefox 中)强制获取资源Ctrl + R
  • 禁用 Firefox 缓存以及使用 Firefox 附加组件。Clear Cache

当这些都不起作用时,我做了更多的谷歌搜索,在那里我遇到了一个堆栈页面(这里),有人建议Apache缓存资源。所以,问题不在于Firefox,而在于服务器。这个家伙还提出了一个我不理解的解决方案(我是一个新手)

我的问题有两个部分:

  1. Apache缓存资源是真的吗?(我如何检查我的是否这样做?
  2. 如何防止它缓存

PS:复制和粘贴堆栈问题中的解决方案(我上面作为链接的那个)不起作用:(


答案 1

我已经遇到过几次这个问题,通常通过在生产站点上调用我的css来克服这个问题

<link rel="stylesheet" type="text/css" href="style.css?v=1" />

当您推出更新时,只需将更改为,它将强制所有用户浏览器获取新的样式表。这也适用于脚本文件。如果你查看源代码,你会发现他们也使用这种方法。v=1v=2Google


答案 2

我曾经在LAMP开发系统中遇到同样的问题,这是由网络安装引起的。我设法通过将这两行添加到我的apache conf中来摆脱它。

EnableMMAP off
EnableSendfile off

推荐