现在有这样一个问题。由于浏览器有缓存,每次发布新本版之后总会有人说浏览不到最新版本。
现在我想在发布之前在每个js,css,aspx添加一个版号,来达到每个用户能够访问到最新版本。
这样能不能够实现。或者有什么更好的办法吗?
现在我想在发布之前在每个js,css,aspx添加一个版号,来达到每个用户能够访问到最新版本。
这样能不能够实现。或者有什么更好的办法吗?
解决方案 »
- TexBox框
- GridView存放两种类型数据
- 如何按拼音首字母检索汉字?
- IIs 发布的虑拟目录指向到另外一台机器的共享目录下,图片显示不出来
- vs2005下编写的网站,为什么在2000的机器上不能运行?
- 急:接着问,关于刷新后分页页面定位的问题
- 高分请教:ASP.NET 与 ASP的区别及学习方法?
- 为什么我用Request.QueryString来获得上页传过来的字符串,凡是中文的都接收不了?
- 求助
- 怎样把"ÆäËüÀà±ð"转化成"%C1%F4%D1%D4%C8%D5%BC%C7"??急!!!
- 如何在GRIDVIEW中点击某行的某列使该单元格变成可编辑状态
- 请大家帮帮忙了?????急!!!
BS的程序更新后重启IIS或者更新前先在IIS中停止该项目,更新完成后启动就OK。不用什么版本区别的!
应该是客户浏览的历史被保存了
js和css都保存在客户端了,这玩意删除比较麻烦,每个浏览器的方法都不一样。
最好的办法就是加时间戳
但是加上时间戳后每次都重取也不是很好
所以还是按照楼主最开始的想法,给你的资源(js,css等文件)加版本号吧。
因为要在每个链接他的地方去改链接地址。这样太麻烦了。
如果通过程序去跑去替换链接地址。假如页面多了效率就是问题了。
var timestamp = (new Date()).valueOf();
这样写不太好。这样会使得js css每次都得从新去请求一次,就效率来说不怎么好。
可以设置版本号变量啊,从设置文件中读取也行。
或者建Master页。反正就大改一次就可以了,之后修改版本号就OK了。
js,css还可以,但是html页面怎么办。而且程序中间有链接。
var timestamp = (new Date()).valueOf();
if (url.indexOf("?") >= 0) {
url = url + "&t=" + timestamp;
} else {
url = url + "?t=" + timestamp;
}
return url;
}
时间戳不知道可不