谷歌Chrome缓存

Jon*_*noB 9 google-chrome browser-cache

我有一个嵌入flash(flex)应用程序的html页面.

我有以下标题:

<META HTTP-EQUIV="CACHE-CONTROL" CONTENT="NO-CACHE">
<META HTTP-EQUIV="CACHE-CONTROL" CONTENT="NO-STORE">
<META HTTP-EQUIV="Pragma" CONTENT="no-cache">
<META HTTP-EQUIV="Expires" CONTENT="-1">
Run Code Online (Sandbox Code Playgroud)

此外,每次我发布新版本的应用程序时,我都会更改文件名.因此,它变成MyApp_v1.swf,然后更新为MyApp_v2.swf.

尽管如此,chrome仍然会缓存html页面和swf文件.这是一个主要问题,因为客户端不会看到更新的swf,除非他们清除浏览器缓存.

我甚至尝试通过更改htaccess文件来解决这个问题,并重命名托管swf文件的index.html文件:

RewriteEngine On
RewriteCond %{HTTPS} !=on
RewriteRule ^(.*)$ https://www.mysite.com/app[R,L] 
DirectoryIndex index.html #this was changed from myapp.html
Run Code Online (Sandbox Code Playgroud)

即使在这样做之后,Chrome仍然会缓存swf,并且仍在从旧的html文件中读取.我在html上做了一个视图源,它仍然显示旧文件.

这在任何其他浏览器中都可以正常工作.

Mik*_*keM 5

这两个错误报告有关,这里有一些很好的相关信息:

问题28035 - 铬 - 缓存不会听到没有缓存选项(google crome)

问题64139 - chromium - 缓存未正确重新验证,no-cache指令

另一种解决方案可能是添加上面链接中提到的特定cache-controlpragmaHTTP标头

另外,愚蠢的问题,您是否在测试<meta>无缓存标签之前清除了chrome缓存?想知道它是否仍然在您的更改之前使用缓存.