禁止JS缓存的办法
2011-09-13 09:07 CELL 阅读(674) 评论(1) 编辑 收藏 举报对于使用script来引入JS时,经常会因为当前的JS被缓存而无法正常的将修改后的JS及时更新至客户端。
所以呢,就在引入JS时加上一个随机参数。但这样的话又会导致本地不缓存而增加服务器端的压力。所以仅当文件被修改时才要更新。PHP中的实现方法如下:
<script type='text/javascript' src='resources/js/index.php.js?version=<?php echo filemtime("resources/js/index.php.js"); ?>'></script>
但如果是对已经存在的一个项目进行这种替换的话v那么工作量不小。不过可以使用DW的正则替换来实现。
1.Ctrl+F调出DW的查找替换框。
2.选择要替换的文件夹。
3.在查找框中输入:<script(.*?)src=(['|"])(.+?)\2
4.在替换框中输入:<script$1src=$2$3?version=<?php echo filemtime('$3'); ?>$2
5.替换的模式选择正则。
剩下的就是等待了。
上面的正则替换未去考虑大小写,JS引入时已经带入参数的情况。对于复杂情况的适应大家去扩展吧。