Chrome - 仅为localhost禁用缓存?

son*_*gyy 45 google-chrome browser-cache web

我正在使用localhost进行开发; 我直接从CDN包括jquery.

似乎按下"Ctrl + R"会强制重新加载,包括从CDN重新下载jquery.

我想询问是否有可能......当我刷新时,我保留了来自CDN的jquery的缓存,但清除了我的localhost的缓存?

注意:我知道我能做的一件事就是在本地托管jquery文件; 我只是想看看是否有办法绕过它.

svp*_*ino 44

您当然可以阻止所有文件进入缓存,但这是一个全有或全无的设置.您无法决定从缓存中清除哪些文件以及哪些文件保留在缓存中.

在开发过程中,由于您使用的是Chrome,我建议您启用"禁用缓存(DevTools打开时)"的设置:

禁用缓存(当DevTools打开时)

如果您像我一样,每次打开DevTools面板时都会禁用缓存.

您可以做的另一件事是指示您的服务器完全绕过所有资源的缓存.由于jQuery来自CDN,因此这种无缓存设置不适用于它.要禁用资源缓存,可以包含以下响应标头:

Cache-Control:no-cache, no-store
Run Code Online (Sandbox Code Playgroud)

  • 对于当前版本的chrome"61",此功能已移至开发人员工具.要激活它,您必须转到:更多工具>开发人员工具>网络"选项卡",然后单击禁用缓存.请注意,这仅在Developer工具打开时才有效. (11认同)

小智 8

在浏览器中,使用它刷新页面:Ctrl+ Shift+R

这将忽略缓存(而Ctrl + r将使用缓存)。

yw :)


Mus*_*cim 6

在 linux/windows 上按Ctrl+ Shift+或在 Mac 上按+ +打开开发人员工具,然后转到选项卡,然后单击iOptionCommandjnetworkDisable cache


Dav*_*llo 6

仅限 Mac:您还可以按住刷新按钮,然后会弹出一个包含三个选项的菜单:

Chrome 清空缓存


Jur*_*inc 5

如果您使用的是 Apache,您可以通过将 .htaccess 文件放入您的 htdocs 目录(或您要禁用缓存的目录)中来禁用服务器(本地主机)上的缓存,其中包含以下内容:

FileETag None
<ifModule mod_headers.c>
Header unset ETag
Header set Cache-Control "max-age=0, no-cache, no-store, must-revalidate"
Header set Pragma "no-cache"
Header set Expires "Wed, 11 Jan 1984 05:00:00 GMT"
</ifModule>
Run Code Online (Sandbox Code Playgroud)