禁用用于网站开发的 Chrome 缓存

Disabling Chrome cache for website development

提问人:tomermes 提问时间:4/17/2011 最后编辑:Pangtomermes 更新时间:10/3/2023 访问量:842225

问:

我正在修改网站的外观(CSS 修改),但由于烦人的持久缓存,我无法在 Chrome 上看到结果。我尝试了+刷新,但它不起作用。Shift

如何暂时禁用缓存或以某种方式刷新页面以查看更改?

google-chrome google-chrome-devtools 浏览器缓存

评论

207赞 Glenn Maynard 7/28/2012
这可能是最糟糕的Chrome错误。我浪费了太多时间想知道为什么事情会出错,却发现——尽管已经用 ^F5 强制完全重新加载——但它使用的是一个小时前的陈旧资源。
51赞 user984003 1/30/2013
浏览器应该缓存。请记住,您的用户也将进行缓存,因此在网站投入生产后,您可能看不到您所做的更改。避免这种情况的方法是对文件进行版本控制。my_css.css?version=something_unique。如果浏览器之前没有看到该版本,则会再次下载文件。例如,something_unique可以是上次修改日期。
40赞 Adonis K. Kakoulidis 2/3/2013
@user984003或应该刷新缓存...Ctrl+Shift+RShift+R
23赞 andrewb 12/17/2013
@user984003 如果我告诉他们不要缓存,就不会。是的,缓存破坏版本号非常适合最终版本,因为这是用户正在使用的版本,但是当我构建一个新站点并且我希望在进行过程中看到增量更改时,我不会每次都更改版本号。因此,我使用 Firefox 进行开发 - 它具有最可靠的缓存禁用选项!
15赞 ahnbizcad 5/5/2016
@user984003是的,浏览器应该缓存......浏览时。在开发时,您需要对此进行更多控制。

答:

14赞 tomermes 5/8/2011 #1

使用++刷新很好,但没有得到我需要的一切。 仍然有些东西不会刷新,例如存储在 JS 和 CSS 中的数据。 找到了一个解决方案:Google 为 Chrome Web 开发人员提供的工具栏。安装工具栏后,选择选项并“重置页面”。CtrlShiftR

评论

2赞 c089 5/18/2011
+1.但仍然不完美:对于在本地计算机上进行开发,缓存是完全不必要的,并且会带来问题,所以我仍然对像 firebug 这样的禁用功能感兴趣。
2095赞 Steve 8/10/2011 #2

Chrome DevTools 可以禁用缓存。

  1. 右键单击并选择打开 DevTools。或者使用以下键盘快捷键之一:Inspect Element
  • F12
  • Control+Shift+i
  • Command+Shift+i
  1. 单击工具栏以打开网络窗格。Network
  2. 选中顶部的复选框。Disable cache

screenshot of development tools panel

请记住,正如 @ChromiumDev 的一条推文所述,此设置仅在 devtools 打开时处于活动状态

请注意,这将导致重新加载所有资源。如果您希望仅对某些资源禁用缓存,则可以修改服务器与文件一起发送的 HTTP 标头

如果不想使用该复选框,则在 DevTools 打开的情况下长按刷新按钮将显示一个菜单,其中包含 or 的选项,该选项应具有类似的效果。阅读选项之间的差异,以了解选择哪个选项。可以使用以下快捷方式:Disable cacheHard ReloadEmpty Cache and Hard Reload

  • Command+Shift+R在 Mac 上
  • Control+Shift+R在 Windows 或 Linux 上

long press

评论

4赞 Mukarram Pasha 3/3/2021
在 mac 上硬刷新的快捷方式是 Command + Shift + R
0赞 alancc 9/2/2021
我发现在测试 Amazon Cloudfront 分配设置的更改时,即使在 DevTools 中“禁用缓存”或使用“空缓存和硬重新加载”也不起作用。必须关闭隐身窗口,手动清除缓存,然后重新打开隐身窗口,并重新输入URL才能查看更新,这非常不方便。
0赞 MDickten 7/6/2022
不起作用(Chrome 103、Mac)。我正在并行开发多个应用程序,并且不断需要手动删除缓存。我不确定这个复选框有什么作用,但它根本不起作用。另一件事是 command+option+r 绝对不会刷新缓存。是的,它会在不使用缓存的情况下重新加载页面,但是当您在没有选项键的情况下再次加载页面时,您将恢复旧内容。我不得不开始使用两种不同的浏览器。对于我想要缓存的所有内容,我都使用 Safari,因此我可以手动刷新 Chrome 缓存而不会损坏任何东西。
0赞 Joshua Robison 4/25/2023
这仅在 DevTools 打开时才有效,如果您试图消除用于 Web 开发目的的缓存,这将完全扼杀目的。我的服务器带有 VS code 进行自动刷新和自动保存,但浏览器中的缓存很糟糕。我无法在每次进行编辑时都单击刷新。必须有更好的方法。
22赞 Tim Keating 9/15/2011 #3

除了禁用缓存选项(您可以通过开发人员工具窗口右下角的按钮访问该选项)之外 -- 工具 |开发人员工具,或 + + ),在开发人员工具的网络窗格上,您现在可以右键单击并从弹出菜单中选择“清除缓存”。CtrlShiftI

15赞 Mason 11/28/2011 #4

需要明确的是,Chrome 中的禁用缓存复选框(此处为 v17,但我相信自 v15 以来)不在主设置 UI 中。它位于开发人员工具设置 UI 中。

  1. 从浏览器窗口的扳手图标菜单(首选项菜单)中,选择“工具”→“开发人员工具”

  2. 在显示的开发人员工具 UI 中,单击右下角的齿轮图标。

  3. 选中“网络”部分中的“禁用缓存”复选框。

17赞 Bruiser 3/28/2012 #5

在 Canary 频道中(也许开发频道和稳定频道也会随之而来),这可以在左侧的“常规”部分下找到第二个选项。

Disable Cache in Chrome Canary Channel

除此之外,始终可以选择通过 Ctrl + Shift + N 切换到隐身模式。尽管不幸的是,这也结束了您的会话。

评论

4赞 mbokil 6/4/2013
根据我的经验,这仅在打开开发工具时有效。我很困惑为什么缓存仍然保留在页面上,直到我意识到我已经关闭了开发工具。奇怪的是,该设置不会覆盖所有内容。
0赞 GobSmack 8/7/2015
不幸的是,隐身模式确实会缓存一些图像和文件。
258赞 dano 8/3/2012 #6

enter image description here

当您需要每小时清除缓存 30 次时,清除缓存太烦人了。所以我安装了一个名为 Classic Cache Killer 的 Chrome 扩展程序,它会在每次页面加载时清除缓存。

Chrome 商店链接(免费)(现在没有恶意软件!

现在,我的模拟 json、javascript、css、html 和数据每次加载时都会刷新。

永远不必担心是否需要清除缓存。

我发现大约有 20 个用于 Chrome 的缓存清理器,但这个似乎很轻巧,而且毫不费力。在更新中,Cache Killer 现在可以保持“始终开启”。

注意:我不认识插件作者。我只是觉得它有用。

评论

4赞 Bryce Johnson 1/25/2014
是的,Chrome Dev Tools 选项似乎对我不起作用。但是缓存杀手就像一个魅力。重新加载时间要慢得多,比如 4-5 倍,但新内容的实际交付速度显然要快得多。
3赞 Sbpro 2/25/2014
清除缓存和禁用缓存仅在我的 mac 上的 localhost 上工作时才有效。对于在线内容,我令人耳目一新,希望看到任何变化。这个扩展是一个救命稻草。
3赞 trevorc 1/13/2016
我发现使用禁用缓存会导致本地存储出现问题,特别是带有 Auth0 的 angular-storage。Cache Killer 运行良好,不会导致本地存储出现问题。
5赞 Semyon Vyskubov 10/27/2017
由于恶意软件:(,已从 Chrome 扩展商店中移除选择?
6赞 Michael Yang 11/11/2017
最后写了我自己的,工作原理相同,但可以切换每个选项卡。 麻省理工学院许可证,没有恶意软件,我保证😎!github.com/themichaelyang/cache-clearer
14赞 jamiescript 3/27/2013 #7

在 chrome 中禁用缓存仅在打开开发工具时有效

评论

0赞 jamiescript 6/7/2013
也许这是一个错误,或者它仅适用于开发人员 - 也就是说,我本来以为非开发人员也̄\_(ツ)_/ ̄想使用禁用缓存选项
3赞 chris 4/10/2013 #8

chrome 网上商店中有一个名为 Clear Cache 的 chrome 扩展程序。

我每天都在使用它,我认为这是一个非常有用的工具。您可以将其用作重新加载按钮,并可以清除缓存,如果您喜欢,还可以清除 cookie、区域设置存储、表单数据等。此外,您还可以定义在哪个域上发生这种情况。因此,只需在您选择的域上,您无论如何都必须按下的重新加载按钮即可清除所有这些狗屎。

非常非常好!

您也可以在选项中为此定义键盘快捷键!

另一种方法是在隐身模式下启动您的 chrome 窗口。 这里也应该完全禁用缓存。

评论

0赞 nkkollaw 4/26/2013
找不到用于定义它在哪个域上执行此操作的选项。看起来不太好。chrome.google.com/webstore/detail/cache-killer/ 怎么样... ..?
0赞 chris 4/26/2013
转到浏览器中的 Clearcache 图标,右键单击选项,然后在 Cookie 下。有一个小设置图标。
6赞 mbokil 6/4/2013 #9

如何更改页面名称以防止页面缓存的书签。在 Chrome 中,您需要创建一个新书签,然后将代码粘贴到 URL 中。单击书签,页面将重新加载时间戳以阻止缓存。

javascript:(function(){var idx = location.href.indexOf('?');var d = new Date();var str = location.href.substr(0,idx) + '?version=' + d.getTime();location.href=str; void 0;})();
6赞 DynamicDan 6/28/2013 #10

我只是被抓住了,但不一定是由于 Chrome。

我正在使用 jQuery 发出 AJAX 请求。我在请求中将缓存属性设置为 true:

   $.ajax({
        type: 'GET',
        cache: true,
        ....

将其设置为false解决了我的问题,但这并不理想。

我不知道这些数据保存在哪里,但我知道 chrome 从未访问过服务器以获取请求。

50赞 user2653348 8/5/2013 #11

还有两个选项可以永久禁用 Chrome 中的页面缓存

1. 在注册表中停用 Chrome 缓存

打开注册表(启动 -> 命令 -> regedit)

寻找:HKEY_CLASSES_ROOT\ChromeHTML\shell\open\command

更换零件后...chrom.exe“转换为此值:–disable-application-cache –media-cache-size=1 –disk-cache-size=1 — "%1"

例:"C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" -disable-application-cache –media-cache-size=1 –disk-cache-size=1 — "%1"

重要:

  • 后面有一个空格和一个连字符......chrome.exe”

  • 保留 Chrome .exe 的路径

  • 如果复制该行,请务必检查引号是否为实际引号。

2. 通过更改快捷方式属性来停用 Chrome 缓存

右键单击Chrome图标,然后在上下文菜单中选择“属性”。 将以下值添加到路径:–disk-cache-size=1

例:"C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" –disk-cache-size=1

重要:

  • 后面有一个空格和一个连字符......chrome.exe”

  • 保留 Chrome .exe 的路径

评论

3赞 danielson317 6/27/2015
好答案。尽管对于大多数人来说,禁用缓存只是在开发过程中的暂时性。永久禁用它会显着减慢正常的浏览体验,并且是一种糟糕的互联网公民身份,因为它会给您访问的 Web 服务器带来不必要的负载。
4赞 peter.petrov 9/14/2018
我不同意糟糕的互联网公民身份,我们在这里谈论的是为开发工作创建一些捷径。所以恕我直言,这绝对是最好的答案。只是一件小事。每次我在 Windows 上将其从此 SO 页面复制到某些 Chrome 快捷方式中时,某些字符都无法正确显示。这些是正确的: 另外,前面的字符是什么?我不知道。"C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" --disable-application-cache --media-cache-size=1 --disk-cache-size=1"%1"
1赞 Gernot Raudner 9/22/2021
我正在寻找 chrome cli 参数来在没有缓存的情况下启动它(出于 CI 目的)。这些似乎什么也做不了。如果我加载一个页面,然后使用 F5(不是 ctrl+F5)重新加载它,缓存仍在使用。在过去 3 年中,Chromium 在这些方面有什么变化吗?
1赞 Gernot Raudner 9/22/2021
刚刚发现 --media-cache-size 已在 2 年前删除:chromium-review.googlesource.com/c/chromium/src/+/1661077
14赞 Răzvan Flavius Panda 9/15/2013 #12

在错误修复之前,您可以使用 Clear Cache Chrome 插件,您还可以为其设置键盘快捷键。

安装后,右键单击并转到选项:

enter image description here

检查:Automatically reload active tab after clearing data

enter image description here

选择时间段:Everything

enter image description here

然后你可以去菜单 => 工具 => 扩展:

enter image description here

单击底部的键盘快捷键:

enter image description here

并设置键盘快捷键,例如+ +:CtrlShiftR

enter image description here

9赞 Kevin Chadwick 11/18/2013 #13

实际上,如果您不介意使用带宽,出于多种原因禁用缓存会更安全,并且许多安全站点都建议这样做。

Chromium 不应该傲慢到足以做出决定和对用户强制执行设置。

您可以使用 --disk-cache-dir=/dev/null 禁用 UNIX 上的缓存。

由于这是意外的,可能会发生崩溃,但如果它们发生,那么这显然表明一个更严重的错误,无论如何都应该修复。

0赞 Torsten Barthel 1/22/2014 #14

嘿,如果您的网站使用的是 PHP,那么在您的 html 页面的开头放置以下小 PHP 片段:

   //dev versioning - stop caching
   $rand = rand(1, 99999999);

现在,无论您在脚本或链接元素中加载 CSS 或 JS 文件等资源,只要您通过 PHP 将 '?' 附加到 URI 后,您都会将生成的随机值附加到请求 URL:

    echo $rand;

就是这样!将不再有浏览器缓存您的网站 - 无论哪种类型。

当然,在发布之前删除您的代码,或者只是将$rand设置为空字符串以允许再次缓存。

205赞 JackArbiter 1/22/2014 #15

Picture of reload menu

  1. 按 ,然后(在控制台打开的情况下)拉出 Chrome 开发者控制台:F12

  2. 右键单击(或按住左键单击)浏览器顶部的重新加载按钮,然后选择“清空缓存和硬重新加载”。

这将超越“硬重载”来完全清空缓存,确保通过 javascript 等下载的任何内容也将避免使用缓存。您不必弄乱设置或任何东西,这是一个快速的 1 次解决方案。

评论

7赞 MJB 5/23/2014
好吧,它绝对不适用于 Mac,我已经单击了带有各种组合键的重新加载按钮;)
0赞 JackArbiter 9/13/2014
@ManirajSS:它会重新加载所有内容并避免使用缓存,但它不会在页面加载后重新下载 javascript 下载的内容。我不确定为什么有人会使用它,但我想你可以想出一些有用的极端情况。
2赞 Pablo Mescher 10/21/2014
它也不会清除页面内 iframe 的缓存。
7赞 Tim Keating 5/27/2015
不确定这已经持续了多长时间,但从 Chrome 41 开始,只要您打开了开发人员工具窗口,单击并按住重新加载按钮即可在 OS X 上运行。
34赞 basickarl 4/3/2014 #16

如果您不想编辑 Chrome 的设置,则可以使用隐身模式获得相同的结果。

0赞 Ahmed 10/27/2014 #17

我已经使用了上面描述的其他选项,但我发现最好的方法是将以下参数添加到chrome.exe的启动中。

“C:\Program Files (x86)\Google\Chrome\Application\chrome.exe” --disk-cache-size=1 -媒体缓存=1

我发现不禁用媒体缓存是个好主意,但为了完整性,它在这里。

实际上,我想要一个选项来完全禁用缓存,将内存用于 IO 而不是我的磁盘(这将使加载时间快 10 倍!),但我认为 chrome 或任何浏览器还没有该选项。

23赞 Tony L. 4/1/2016 #18
  1. F12打开 Chrome DevTools
  2. F1打开 DevTools 设置
  3. 选中“禁用缓存(当 DevTools 处于打开状态时)”,如下所示:

这目前位于默认的“首选项”选项卡上。您可能需要向下滚动。自从提出这个问题以来,这个复选框至少被移动了几次。最后我检查了一下,它在底部的中间列中。如果您在较薄的屏幕上打开它,并且“首选项”下有 2 列,它可能位于右上角附近。如果这篇文章有变化或评论,请随时更新这篇文章,我会更新这篇文章。

enter image description here

评论

2赞 Bogdan Verbenets 1/24/2018
这与直接在 F12 Chrome Devtools 上检查“禁用缓存”的作用相同,当您重新启动 Chrome 时,它将重置。
1赞 Alex Coroza 8/10/2016 #19

从版本 50 开始(如果我没记错的话),“禁用缓存”选项已从 Devtool 设置中删除。转到“网络”选项卡,然后有“禁用缓存”选项。

2赞 Tomi Mickelsson 9/19/2016 #20

我的第三个 Chrome 扩展程序 Page Size Inspector 提供了另一个禁用缓存的选项,它禁用缓存的方式与 Devtools 完全相同。

此外,该扩展程序以方便的方式快速报告网页的页面大小、缓存使用情况、网络请求和加载时间。加上它在 Github 上的开源。

Screenshot - Page Size Inspector

18赞 Saber 11/24/2016 #21

而不是按“F5” 只需点击:

“Ctrl + F5”

评论

6赞 Donald Duck 1/1/2017
它也可以在Firefox中使用(不是因为它与这个问题相关,但有人可能会发现它有用)
8赞 KhoPhi 1/17/2017 #22

这可能会对某人有所帮助。

我已经操纵了我的 Nginx 进行疯狂的缓存。因此,在网络工具中禁用缓存和显式清除缓存不起作用。

一个非常简单但无聊的解决方法是,我只是打开一个新的隐身标签。 令人惊讶的是,它一直有效!

隐身模式下的硬刷新可以在我希望以相同模式重新加载的任何时候解决问题。

2赞 MattE 1/27/2017 #23

不确定您使用的是什么,但如果您使用的是 ASP.Net 您可以执行以下操作,其工作原理类似于魅力:

<link href="@Url.Content("~/Content/Site.css")[email protected]" rel="stylesheet" />

基本上,每次运行时,它都会自动将日期和时间附加到文件的末尾,这意味着由于文件名在技术上是不同的,因此您永远不必担心它再次被缓存。

评论

0赞 Cee McSharpface 2/18/2017
绝对。我使用了这个和条件编译,所以它不会出现在测试和发布版本中。
0赞 Oliver Manner 10/30/2017
更好的方法是使用 css 文件修改时间作为变量值。该解决方案也可用于生产环境。它只是:)不知道它在 ASP 中是如何完成的,但在 PHP 中是这样的<link href=“style.css?time=<?php echo fileminfo('style.css');?>“ rel=”样式表“>
0赞 vhs 4/7/2017 #24

如何暂时禁用缓存或以某种方式刷新页面以查看更改?

目前尚不清楚您指的是哪个“缓存”。浏览器可以通过几种不同的方法持久缓存内容。Web 存储是其中之一,Cache-Control 是另一个。

某些浏览器还具有缓存,与 Service Worker 结合使用,用于创建提供脱机支持的渐进式 Web 应用 (PWA)。

清除 PWA 的缓存

self.caches.keys().then(keys => { keys.forEach(key => console.log(key)) })

若要列出缓存键的名称,请运行:

self.caches.delete('my-site-cache')

按名称(即 )删除缓存键。然后刷新页面。my-site-cache

如果刷新后在控制台中看到任何与工作线程相关的错误,可能还需要注销已注册的工作线程:

navigator.serviceWorker.getRegistrations()
  .then(registrations => {
    registrations.forEach(registration => {
      registration.unregister()
    }) 
  })
0赞 BernieSF 6/14/2017 #25

Chrome 的缓存杀手是迄今为止最好的选择。由于安装缓存杀手的商店URL已关闭,因此您可以在此处下载CRX文件:

https://www.crx4chrome.com/extensions/jpfbieopdmepaolggioebjmedmclkbap/

下载扩展程序文件后,打开 Chrome -> 更多工具 ->扩展程序,然后将 CRX 文件从文件资源管理器或桌面(取决于您下载文件的位置)拖到 Chrome 窗口中以安装扩展程序。

5赞 Luftwaffle 6/24/2017 #26

现在有一种更好、更快的方法(Chrome 版本 59.x.x):

右键单击重新加载图标(url 字段的左侧),您会看到一个下拉菜单,选择第三个选项:“空缓存和硬重新加载”。

此选项仅在开发人员工具打开时可用。 (请注意与选项 2 的区别:“硬重载”-cmd-shift-R)。这里没有缓存清空!

2赞 Ole EH Dufour 12/11/2017 #27

我有同样的问题,我试过:

  • 控制换档 R,
  • 在 F12 中禁用缓存
  • 控制 F5。

然后我发现不推荐使用非 https 站点的 .appcache 清单。 我删除了我的 site.appcache 文件及其在 html 标签中的引用,现在我看到了每个页面的最新版本!

3赞 Bob 10/31/2018 #28

如果您使用的是 ServiceWorker(例如:对于渐进式 Web 应用),您可能还需要在开发工具中选中 Application > Service Workers 下的“重新加载时更新”。

enter image description here

8赞 Sachin Jain 9/19/2020 #29

当被问到这个问题时,Chrome 不支持禁用缓存功能。但是现在,您可以在 Chrome 开发工具的“网络”选项卡中找到“禁用缓存”功能。

禁用缓存的网络选项卡

Screenshot - Disable Cache Feature in Chrome Dev Tools

您可以看到所有资源(我已经过滤了 JS 资源)都是从网络中获取的,而不是从磁盘/内存缓存中加载的。

禁用未选择缓存

enter image description here

您可以看到,当我刷新页面但没有选择“禁用缓存”功能时,几乎所有资源都是从缓存加载的。

这适用于本地 Web 开发,但我想强调某些限制。如果到目前为止讨论的解决方案符合您的用例,您可以停止阅读此处。

局限性

  1. 必须使 DevTools 保持打开状态并禁用缓存处于选中状态
  2. 禁用缓存时,将对该选项卡中的所有资源禁用缓存。如果您只想禁用 1-2 个资源的缓存,它会使事情变慢并且效率低下

使用 Requestly Chrome 扩展程序禁用特定资源(JS/CSS/图像等)的缓存

最近,我偶然发现了 https://dev.to/requestlyio/disable-caching-of-particular-js-css-file-2k82,它帮助我了解如何禁用特定资源的缓存。

这里的诀窍是在每次发出请求时向资源添加一个具有随机值的查询参数。使用 Requestly 查询参数规则,您可以添加如下参数

URL Contains mywebsite.com/myresource.js
Add param cb rq_rand(4)

rq_rand(4) 在发出请求时被替换为 4 位随机数。

请求查询参数规则添加随机参数

enter image description here

添加规则后,不会缓存 JS/CSS 文件

Requestly Rule applied and added a random parameter to disable cache

在这里,您可以看到没有选择“禁用缓存”,并且由于 URL 中的随机参数(cb - 将其读取为 Cache buster),资源仍然没有从缓存中加载。

  1. 好消息是,你不需要为有这种行为而保持你的开发工具处于打开状态
  2. 您可以永久启用此功能,您的浏览体验也不会受到影响。

如何获取规则

这是链接,如果您安装了 Requestly,您可以使用该链接浏览和下载规则 - https://app.requestly.io/rules/#sharedList/1600501411585-disable-cache-stackoverflow

免责声明:我构建了 Requestly,但我认为这可能对许多 Web 开发人员有所帮助,因此在这里分享。

1赞 Marek Wysmułek 5/3/2021 #30

一般来说,“烦人”缓存的问题出在框架:)上。让我们看看细节。 大多数框架在 .htaccess 中使用(os 等效)derective 将所有请求重定向到框架“索引”,

但它同时排除应用程序直接请求的文件和目录。

(例如,对于.htaccess,典型指令是:

    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-l
    RewriteRule ^(.+)$ index.php?url=$1 [QSA,L]

)

因此,所有.js,.css文件作为图形文件都不由框架“索引”处理。

这些文件通常在开发过程中最常被更改。

这就是为什么缓存控制 derective 不应该放在框架“索引”中的原因。

它应该在 .htaccess 中苍白无力。

F.e. 用于开发过程:

  Header set Cache-Control "no-store, no-cache, must-revalidate"
  Header set Pragma "no-cache"

(或者对于连续的工作版本,请使用“Etag”指令 - 在 HTTP 参考中查看更多。请注意,ETag 不用于开发。

在 .htaccess 中,没有直接的方法来生成随机数(或快速变化的序列,如日期 UTC)以在 ETag 中使用,因为 - 正如我之前提到的 - 这不是规定的)。

希望它能有所帮助并节省时间。