日期:2014-05-16  浏览次数:21657 次

iis 静态文件 缓存
服务器有两个目录,放着程序版本A和版本B。
虚拟目录一开始指向A,发现错误,指向B。发现B中一个页面有错误,将页面从A中考入B中。从本地访问,没问题了。从其他地址访问,访问该页面,还是返回覆盖之前的文件。清空浏览器缓存,重启IIS都不管用。在B目录中,修改一下这个页面(加个空格)。OK了。

问:IIS 静态文件缓存。覆盖为什么没有更新缓存。为什么本地是新文件,其他地址是旧文件。为什么重启iis都不管用。
------解决方案--------------------
不是很清楚为啥本地能更新成新文件. 
对于静态缓存, 更新后服务器端必须清空缓存. 但是客户端还是可能缓存了这些资源, 且默认情况下不会再去服务器端取新的. 在浏览器里用Ctrl+F5可能可以彻底更新. 另外, 在服务器端修改HTTP头, 加入"Cache-Control: no-cache"可以强制所有客户端都去取更新的资源.