Chrome无法清除缓存......Ctrl+F5也似乎不起作用

84

我正在进行一个网页项目,但我在Google Chrome浏览器中遇到了这个非常烦人的问题......

每次我对我的网站进行更改时,浏览器都不会刷新并清除缓存。它在我朋友的Chrome浏览器中完全正常运行,但是对我来说显然不行。

如上所述,Ctrl + F5对我无效。我尝试按F12(进入开发者控制台)并右键单击刷新图标,然后点击“清空缓存并强制重新加载”。但仍然不起作用......实际上不准确,它曾经起过作用——但现在又回到了原来的状态......我尝试重新安装Chrome,但仍然没有用......我尝试清除我的整个历史记录,包括所有密码、缓存等等——但什么都没有解决这个问题。

2020年2月5日修改: 您提供的一些答案对我有用,但是我有一段时间前找到了一个对我非常有效的Chrome扩展程序,我想与社区分享。它被称为“清除缓存”,您可以在此处找到:

https://chrome.google.com/webstore/detail/clear-cache/cppjkneekbjaeellbfkmgnhonkkjfpdn/RK%3D2/RS%3DzwqaryCReNAACSfd_oYYPpX0_tw-


打开开发者控制台 -> 右键单击刷新图标,然后点击“清空缓存并强制重新加载”。 这对我来说是新的,它像魔术一样奏效。谢谢伙计 :) - Jayesh Dhandha
@JayeshDhandha 很不幸,这个方法并不能像魔法一样适用于所有用户。这次对我也没用。很奇怪,这种方法什么时候有效,什么时候无效是不可预测的 O_o - boldnik
17个回答

97

我曾经也遇到过类似的问题。我发现我需要打开 Chrome 开发者工具,然后按下 Ctrl + F5。只有这样缓存才会被刷新。

更新

此外,我建议您在开发者工具的 "网络" 选项卡中选择 "禁用缓存"。


25
你在“开发者工具-网络”中提到的禁用缓存的提示起了决定性作用,没有其他方法奏效。 - specimen
6
没有任何方法奏效,无论是禁用缓存选项、打开F12工具、按Ctrl-F5键、在Chrome中点击并选择“清空缓存并强制刷新”,一切都无济于事,只有疯狂地刷新20次才能生效。对我每次修改JS代码来说,这简直是疯狂的事情。 - Jiro Matchonson
2
这个在服务工作者中不起作用,我已经看到一些设备出现了这个问题,通过 F12 > ctrl + shift + p > 清除站点数据 "可能" 会起作用。 - Ayyash
3
是的。在开发者工具中禁用缓存-网络完成了任务。但现在想知道如何在安卓上的Chrome中做到同样的事情! - Snowcrash
3
多年来一直存在这个问题。尝试在没有登录Google账户的浏览器中,查看缓存是否已清除。他们正在以我们不知道的方式进行缓存。 - Philip Ingram
显示剩余4条评论

28

如果您右键单击刷新按钮,还可以选择清空缓存和硬重载选项

除非您打开dev工具,否则此方法不起作用。因此,您需要先检查元素,然后右键单击刷新按钮。然后您就有了“清空缓存和硬重载”的选项。


3
哇,谈论一个隐藏功能,我完全不知道那里有。非常酷! - drewboswell
1
我也是!这是唯一对我起作用的东西。我认为谷歌浏览器乐于推送未经测试的内容,例如开发者工具中的缓存清除功能不起作用。 - landed
你能分享一些屏幕截图吗?我不知道在哪里找这些选项。 - WestCoastProjects
@javadba 右键单击网页,然后选择检查,然后右键单击重新加载/刷新按钮。 - frazras
这些选项实际上在某个时候开始出现了 - 尽管最初做同样的事情时它们并没有出现。 - WestCoastProjects

11

对我有效的唯一方法是退出我的谷歌账户。由于登录在多个设备之间共享的帐户似乎无法正确清除缓存,因此出现了这种情况。我尝试手动清除浏览器缓存,使用第三方缓存清理程序,刷新DNS缓存,检查dev工具中的复选框以忽略缓存,使用隐身窗口等等。但都没有效果!只有在退出登录后,所有内容才能从测试设备中正确清除。


6
拜托了神啊,这居然管用了。Chrome缓存坏掉到什么程度啊,哈哈。 - Jiro Matchonson
这对我也没有帮助。 - klm123

5

按下 control + shift + R 即可在 Chrome 75.0.3770.100 (正式版本) (64 位) 中刷新页面, 这也适用于 Mac 操作系统; 而 control + shift + F5 并无效果。


3
在我的情况下,上述解决方案都不起作用。我使用的是Google Chrome 71.0.3578.98 64位版本。然而,在尝试了一些Chrome控件后,我发现了这个解决方案:
  1. 点击浏览器右上角的3个垂直点
  2. 点击“更多工具”
  3. 点击“清除浏览数据…”
  4. 在几乎看不见的“基本”选项卡下,将“时间范围”改为“全部时间”
  5. 取消勾选“浏览历史记录”,除非您也想清除此数据
  6. 取消勾选“Cookie和其他站点数据”,这是强烈建议的,您可能不想丢失所有网站的登录名和密码。
  7. 选中“缓存的图像和文件”,这就是我们要清除的内容
  8. 点击蓝色按钮“清除数据”
就这样。

这并没有帮助。 - klm123

2
似乎CTRL+F5是针对Internet Explorer的,而Shift+F5是针对Chrome的。
编辑(2019年2月21日):在更新的Chrome版本中,我已经改用CTRL-Shift-R,因为这似乎是官方和更可靠的行为。
另一个回答者指出右键单击重新加载按钮会给出选项,但这似乎不再适用(版本72.0.3626.109)。

3
要使用该功能,您需要打开开发者工具(F12)。 - Turab

2

我尝试了所有方法,甚至卸载Chrome本身都没用。结果发现是使用你的Google账户进行缓存。我通过在我的.js文件名后添加一个随机字符串来“解决”这个问题。

<script type="text/javascript" src="js/bundle.js?r=37173634873"></script>

其中的数字总是不同的。您可以使用PHP或捆绑器本身。

这会强制浏览器加载“新”的js文件。


1
这可能是使用应用程序缓存的结果。如果您通过html标记将cache.manifest包含在页面中:<html manifest="cache.manifest">,则必须编辑它以使其中列出的文件被刷新(例如,考虑添加或修改类似#v1.0的注释)。
还要确保您要更新的文件在缓存清单中列出。

1
上次F5和Ctrl-F5对我无效时,是因为我按了F-lock键(微软键盘)。它类似于Num-Lock,但用于功能键。

0

所以我也做了一切。清除了缓存,退出了Chrome。尝试仅使用FTP上传文件等等。直到我意识到问题是服务器端缓存。我只需要登录我的cPanel并关闭Cachewall即可。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接