asp.net 发布的时候经常遇到 js ,css 或者 图片什么的没有更新,这是好多程序员都要 按ctrl+F5 强制刷新一下,但是chrome 浏览器 有时候 要7-8次才算正常。 对应新手来说,可能不知道什么原因了,根据亲身经历 ,提供2中方式来解决发布新版本程序和升级的问题。
1 在每个文件后面加版本号,最经常看到 如 jquery(jquery-1.4.4.min.js) 因为加了版本号,浏览器请求服务器上原先的文件, 这是已经找不到了,那么必须重新下载新的文件。这时就达到了缓存失效的目的。 但是有人提出疑惑,一个工程浩大,不可能每升级一次 都要把所有的文件 都加一遍版本号,不太现实,于是第二个方法就出来了。
2 在URL后面添加一个版本号,让原先的URL失效。 当然是从代码实现,形如
<%= Htmlrewrite.css("/css/css.css")%> <%= Htmlrewrite.jsl("/js/js.js")%>
目标是
<link type="text/css" rel="Stylesheet" href="/css/css.css?_t=6456456456053453" /> <script type="text/javascript" src="/js/js.js?_t=645645645345364"></script>
无论哪种方式 都是为了 让浏览器 从服务器上重新下载 。