禁用Chromecaching进行网站开发

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

我怎样才能暂时禁用caching或以某种方式刷新页面,我可以看到更改?

Chrome DevTools可以禁用caching。

F12右键单击Inspect Element以打开DevTools。 现在点击工具栏中的Network 。 最后, 检查顶部的Disable cachecheckbox。

开发工具面板的截图

请记住,正如@ChromiumDev的推特所说,这个设置只有在devtools打开的时候才会激活

在这里输入图像描述

如果您需要每小时清除一次caching30次,则清除caching太烦人了。所以我安装了一个名为“ 经典caching杀手”的Chrome扩展程序,可在每次页面加载时清除caching。

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

现在我的模拟JSON,JavaScript,CSS,HTML和数据刷新每次每一页加载

如果需要清除caching,我永远不必担心。

我发现Chrome浏览器大约有20个caching清理工具,但是这个看起来很轻巧,没有任何问题。 在更新中,caching杀手现在可以保持“永远在线”状态。

注:我不知道插件作者。 我发现它很有用。

重新加载菜单的图片

  1. F12键 ,然后(打开控制台)拉起Chrome开发者控制台:

  2. 在浏览器顶部的重新加载button上点击右键(或按住鼠标左键),然后select“清空高速caching和硬重新加载”。

这将超越“硬重新加载”完全清空caching,确保通过JavaScript等下载的任何内容也将避免使用caching。 你不必乱搞设置或任何东西,这是一个快速的一枪解决scheme。

还有两个选项可以在Chrome中禁用页面caching

1.停用registry中的Chromecaching

打开registry(开始 – >命令 – > Regedit)

search: 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“

  • 保持原来的pathchrome.exe

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

2.通过更改快捷方式属性来停用Chromecaching

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

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

重要:

  • 有一个空格和连字符之后… chrome.exe“

  • 保持原来的pathchrome.exe

除了禁用caching选项(您可以通过开发人员工具窗口右下angular的button – 工具|开发人员工具或Ctrl + Shift + I ),在开发人员工具的networking窗格中,您可以现在右键单击并从popup菜单中select“清除caching”。

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

在加那利海峡(也可能跟着开发和稳定的渠道),这是在“一般”部分下左边的第二个选项。

在Chrome Canary频道中禁用缓存

除此之外,总是可以通过Ctrl + Shift + N切换到隐身模式。尽pipe不幸的是也会结束您的会话。

  1. F12打开Chrome DevTools
  2. F1打开DevTools设置
  3. 检查禁用caching(DevTools处于打开状态) ,如下所示:

这是目前在默认的选项选项卡上。 您可能需要向下滚动。 这个checkbox被移动了,并且自从这个问题被问到以后,至less被移动了几次。 最后我检查了一下,它在底部的中间一列。 如果您在较薄的屏幕上打开它,并且在“首选项”下有两列,则可能位于右上angular附近。 如果更改或评论,请随时更新此post,我将更新post。

在这里输入图像描述

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

“Ctrl + F5”

要清楚的是,Chrome中的禁用cachingcheckbox(这里是v17,但自v15我相信)不在主要设置UI。 它在开发人员工具设置UI中。

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

  2. 在出现的开发者工具UI中,点击右下angular的齿轮图标。

  3. 检查networking部分中的“禁用caching”checkbox。

使用Ctrl + Shift + R来刷新是不错的,但没有得到我需要的一切。 仍然有些东西不会刷新,比如存储在js和css中的数据。 find了一个解决scheme: 谷歌网页开发工具的谷歌 。 安装工具栏后,select选项和“重置页面”。

在chrome中禁用caching只有在您打开开发工具时才能使用

在错误修复之前,您可以使用清除caching Chrome浏览器插件,也可以为其设置键盘快捷键。

安装完成后,右键点击选项:

http://j.mp/15ZdA6f

Automatically reload active tab after clearing data

http://j.mp/15ZdGLh

select时间段的Everything

http://j.mp/15ZdPy7

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

http://j.mp/15ZehfX

点击底部的键盘快捷键:

http://j.mp/15Zepft

并设置你的键盘快捷键,例如Ctrl + Shift + R

http://j.mp/15Zev6M

实际上,如果您不介意使用带宽,则由于多种原因而禁用caching,并由多个安全站点build议,因此更安全。

铬不应该傲慢地做出决定并强制用户设置。

您可以使用–disk-cache-dir = / dev / null在UNIX上禁用高速caching。

因为这可能会发生意想不到的崩溃,但是如果这样做会明显地指出一个更严重的错误,在任何情况下都应该修复。

这可能有助于某人。

我把我的Nginx装上了疯狂的caching。 因此,禁用networking工具中的caching并明确清除caching不起作用。

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

无痕模式下的硬刷新可以在任何时候重新加载相同的模式。

如何改变页面名称以防止页面caching的小书签呢? 在Chrome中,您可以创build一个新的书签,然后将代码粘贴到URL中。 点击书签,页面将重新加载时间戳,以阻止caching。

 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;})(); 

我刚刚被抓到,但不一定是由于铬。

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

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

设置这个错误解决了我的问题,但这并不理想。

我不知道这些数据保存在哪里,但是我知道chrome从来不会在服务器上发出请求。

Chrome网上应用店中有一个名为ClearCache的Chrome扩展。

我每天都在使用它,而且我觉得它是一个非常有用的工具。 你可以使用它作为一个重新加载button,可以清除caching,如果你还喜欢cookies,语言环境存储,表单数据等,也可以定义在这个领域发生。 所以可以清除所有这一切只有重新加载button,无论如何不得不按下 – 在您select的域名。

非常非常棒!

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

另一种方法是在隐身模式下启动Chrome浏览器窗口。 这里的caching也应该完全禁用。

另一个禁用caching的选项是由我的第三个Chrome扩展页面大小检查器提供的 ,它可以像Devtools一样禁用caching。

另外,该扩展可以方便快捷地报告页面大小,caching使用情况,networking请求和网页加载时间。 加上其在Github的开源。

截图 - 页面大小检查器

不知道你在用什么,但是如果你使用的是ASP.Net,你可以做下面的工作就像一个魅力:

 <link href="@Url.Content("~/Content/Site.css")?time=@DateTime.Now" rel="stylesheet" /> 

基本上它会自动追加date和时间到文件末尾每次运行,这意味着由于文件名在技术上是不同的,你将永远不必担心它得到caching再次。

现在有更好更快捷的方式(Chrome版本59.xx):

右键单击重新加载图标(url-field左边),出现一个下拉菜单,select第三个选项:'空caching和硬重新加载'。

此选项仅在开发人员工具处于打开状态时可用。 (请注意与选项2的不同之处:“重新加载”-cmd-shift-R)。 没有caching清空在这里!

我怎样才能暂时禁用caching或以某种方式刷新页面,我可以看到更改?

目前还不清楚你指的是哪个“caching”。 浏览器可以持久地caching内容有几种不同的方法。 networking存储就是其中之一, Cache-Control是另一个。

一些浏览器还有一个与服务工作者结合使用的Cache ,用于创build提供离线支持的渐进式Web应用程序(PWA)。

清除PWA的caching

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

列出caching键的名称,然后运行:

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

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

如果刷新后在控制台中看到与工作人员相关的错误,则可能还需要取消注册注册的工作人员:

 navigator.serviceWorker.getRegistrations() .then(registrations => { registrations.forEach(registration => { registration.unregister() }) }) 

嘿,如果您的网站使用PHP,然后将下面的PHP代码片段放在您的html页面的开头:

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

现在无处不在,您可以在脚本或链接元素中加载像CSS或JS-文件这样的资源,并在附加'?'后将生成的随机值附加到请求URL。 通过PHP的URI:

  echo $rand; 

而已! 不会有浏览器caching你的网站了 – 不pipe是哪一种。

当然,在发布之前删除你的代码,或者简单地将$ rand设置为一个空string,以便再次进行caching。

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

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

我发现不禁用媒体caching是一个好主意,但这是完整的。

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

从版本50(如果我没有记错的话),从Devtool设置中删除“禁用caching”选项。 转到“networking”选项卡,并有“禁用caching”选项。

Chrome的caching杀手是迄今为止最好的select。 由于安装caching杀手的商店URL已closures,因此您可以在此处下载CRX文件:

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

下载扩展文件后,打开Chrome – >更多工具 – >扩展,然后从文件浏览器或桌面(取决于下载文件的位置)将CRX文件拖到Chrome窗口中以安装扩展。

添加这个string的代码给你,它应该做的伎俩。

 <meta name="robots" content="noarchive">