当前位置: 首页 > 面试题库 >

防止缓存CSS文件

凤安然
2023-03-14
问题内容

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

开发配置: WAMP

生产配置: LAMP

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

我进行了一些谷歌搜索,发现了已经尝试过的其他解决方案

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

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

我的问题分为两部分:

  1. Apache缓存资源是真的 吗?(我如何检查我的呢?)
  2. 如何防止其缓存

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


问题答案:

我已经遇到过几次这个问题,通常在生产现场通过像这样调用我的CSS来解决问题

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

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



 类似资料:
  • 我的项目是这样组织的: 在我的calculate.js文件中,我对数据库进行了一个ajax调用,并且我检索了一些值以显示在statistics.html中的表中,但问题是,一旦计算出这些值,这些值就会被缓存,当我再次调用calculate.js以获取其他数据时,第一次显示的信息也是相同的。 但他们还在。我怎么解决这个? 编辑: 这是我的rest控制器:@RequestMapping(value=“

  • 问题内容: 我有一个简单的html: 在test.js中,我更改了Javascript函数,但是我的浏览器正在缓存该文件。如何禁用脚本src的缓存? 问题答案: 将随机查询字符串添加到 您可以通过在每次更改时增加查询字符串来手动执行此操作: 或者,如果您使用服务器端语言,则可以自动生成以下内容: ASP.NET:

  • 问题内容: 在iPad项目中,我正在研究该应用程序的内部,该应用程序显示一个.html文件,该文件链接到.css文件,即 这些文件存储在iPad本地,但从远程服务器获取。我注意到,它会无限期地缓存.css文件,并且无论何时更改都会拒绝加载新文件。我曾经更改过文件的名称只是为了使其重设,但是从长远来看,这是不可接受的。 有没有一种方法可以防止将CSS文件缓存在中?甚至更好的是,有什么方法可以说何时缓

  • 问题内容: 我有一个系统,其中将缓存最大使用率设置为0,并且在我对style.css进行了一些更改时出现问题。css失败,更改不会出现在客户端上。浏览器将使用旧的CSS缓存版本。我有一个简单的问题:将css文件命名为style.css?123是否会作为新缓存? 问题答案: 是的,在资源的URI中添加唯一的查询字符串将强制客户端获取“新”版本(因为客户端不知道这仅仅是对先前缓存的资源的 更新 )。这

  • 问题内容: 所以我正在做这个小项目,但是在捕捉方面有些麻烦。不能正常工作的一件事是,浏览器一直在缓存包含保存数据的json文件,当我在其他地方更新json时,浏览器会返回到已缓存的json文件的旧版本并读取该旧版本。不幸的是我不想要那个。我根本不希望浏览器完全缓存文件,以便每次加载页面时,它将向服务器请求json文件并根据该文件而不是已缓存的任何文件进行操作。但是,我希望能够缓存页面上的所有其他内

  • 问题内容: 我已经编写了一个Linux驱动程序,该驱动程序ioremaps将特定设备的PCI BAR0导出为sysfs二进制属性,允许用户空间直接控制它。 当我尝试在属性顶部使用MMAP来直接访问该位内存(从Userland程序)时,问题就浮现了。读取可以很好地完成并返回期望值,尽管当我写入该内存时,它似乎被缓存在内核和内存之间的某个地方,而不是传递给GM​​CH根联合体(以及设备)。我想做的是每