Chrome拒绝清除Javascript缓存(即使在硬重新加载和手动缓存清除后)

时间:2018-01-17 17:30:21

标签: google-chrome caching browser-cache

与标题一样,Google Chrome拒绝加载较新版本的Javascript文件。

我试过了:

  • Ctrl + F5
  • 开发者控制台>网络标签>禁用缓存
  • 禁用缓存,然后使用开发控制台仍然打开右键单击“刷新”>空缓存和硬重新加载
  • 禁用缓存,然后使用开发控制台仍然打开Ctrl + F5
  • Chrome设置>从时间开始手动删除所有缓存,然后按Ctrl + F5

此处列出的所有内容都是:Chrome WON'T clear cache... ctrl + F5 doesn't seem to work either

这些都不起作用。源面板仍然显示正在加载旧的Javascript文件。绝对令人难以置信的是,当我右键单击“源”面板中的文件,然后选择“在新标签页中打开”时,更新的文件将在新标签页中打开,但随后会刷新页面仍然在开发控制台的源面板中显示旧文件。

让Chrome为我工作的唯一的事情是手动追加?和文件名末尾的随机数。这似乎迫使Chrome实际加载新文件。截至目前,我一直在使用PHP添加

<script type="text/javascript" src="file.js<?php echo '?' . rand(); ?>"></script>

为了在Chrome中正确加载任何内容,但这似乎是一个糟糕的解决方案。

我的问题是,如何让Chrome实际从服务器而不是缓存重新加载Javascript文件?

2 个答案:

答案 0 :(得分:1)

您可以通过添加到响应标头来解决服务器端的问题:

Cache-Control: must-revalidate

如果您想使用Ctrl + F5,请在打开开发者控制台后执行此操作-它应该可以工作。 确保在开发者控制台的“网络”标签中选中“禁用缓存”。

答案 1 :(得分:1)

您是否尝试过完全擦除缓存?

C:\ Users \您的用户名\ AppData \ Local \ Google \ Chrome \ User Data \ Default \ Cache