Azure Deploy / Publish上的CSS文件未更新

时间:2012-03-29 20:03:52

标签: caching azure cloudflare

分辨 我不知道,Cloudflare默认缓存所有css / js文件4小时。

情景:

我将其添加到首页:

<span class="test">hullo!</span>

这是我们的css文件:

.test { font-size:2.0em; }

我进行了Web部署,或者完全发布到Azure,并且跨页显示在首页上,但不是样式。由于某种原因,css文件没有更新。 FF,IE,Chrome和Safari都证实了这一点。但是,在看似随意的时间之后,css文件会更新。

即使我远程访问Azure VM并重新启动应用程序,样式也不会改变。该应用程序在一个实例上运行,一个角色。没有设置Azure缓存。将查询字符串参数添加到css文件链接没有帮助。似乎是一个缓存问题,但不知道如何解决。

有什么想法吗?

4 个答案:

答案 0 :(得分:3)

“我们正在使用Cloudflare,它具有默认设置来缓存所有CSS和JS文件。它每4小时清除一次缓存,导致任意更新。所以,即使我在最后添加一个新的查询字符串对于css文件,Cloudflare仍然缓存旧的“

请注意,在对您网站上的static content files进行更改时,您应该转到CloudFlare开发模式。您可以通过转到:settings-&gt;开发模式进入开发模式以绕过缓存。您还可以选择清除缓存作为附加选项,如果您真的想要清除所有内容,我们建议您这样做。

答案 1 :(得分:2)

看起来它是由您的浏览器缓存的。您可以尝试导航到您的站点并按Ctrl + F5。

也许您可以使用Fiddler查看CSS是否已缓存,或未更新,或下载时出现错误。

答案 2 :(得分:1)

此问题已得到解决。

我们正在使用Cloudflare,它具有默认设置来缓存所有CSS和JS文件。它每4小时清除一次缓存,导致任意更新。因此,即使我在css文件的末尾添加了一个新的查询字符串,Cloudflare仍然会缓存旧的查询字符串。

答案 3 :(得分:0)

我已经解决了这个问题,我将告诉您,根据我在Chrome中的经验,您可以设置一个禁用开发人员工具中缓存的设置,但是,我注意到,除非您在开启工具窗口时打开它按Ctrl + F5它不会重新加载缓存。在IE中,开发工具中有一个全局设置,每次都会重新下载所有内容。在Firefox中,开发工具中还有一个设置,要求它下载而不是使用缓存。

你可以测试这个的一种方法,以及我如何测试它,是通过运行Fiddler并观察它是否完整下载了你的所有文件或者它是否正在缓存。

根据我的经验,这确实是一个浏览器缓存问题,与Azure没有任何关系。