即使缓存和DNS被刷新,旧的.js文件仍然被提供服务

时间:2016-05-22 12:41:58

标签: javascript azure caching dns

我已经像往常一样更新了一个javascript文件并将其部署到我的网站上(使用azure)。

然后我清除了我的缓存并测试了网页但它仍然提供旧的javascript文件。 我已通过FTP检查并看到文件已更新,我已从其他计算机访问该文件,并且他们收到更新版本。

但是,即使我从主计算机上使用Fiddler,我仍然会收到旧文件。

我也刷了我的DNS,但我仍然得到旧文件。

奇怪的是,当我更新任何其他JS文件时,它正在检索更新的文件而没有任何问题 - 它只是这个特定的JS文件。

可能导致这种情况的原因是什么?我的缓存被清除,我的DNS被刷新 - 为什么我仍然收到我的文件的旧版本?

顺便说一句,主机是Microsoft Azure,使用标准的Web App。

2 个答案:

答案 0 :(得分:0)

如果您从工作/公共场所(即不在家)访问此项,那么他们的服务器也可以缓存该文件以节省带宽。您有两种选择:

(A)要求您的服务器管理员更改服务器设置,以便它不会从您的域缓存。

(B)等一段时间。

从我的工作地点开发时,我遇到了完全相同的问题。我通常只从localhost部署,当我完全满意它会起作用时!

答案 1 :(得分:0)

有时我也会遇到这种情况,有趣的是你会在azure控制台上看到更新的文件,但旧的东西会被提供。

一种解决方案是从Azure门户重启网站并等待几分钟。