页面防止js,css等缓存问题解决办法

  这个问题对于做开发的人来说不是多大问题,也不太容易发现,因为在做开发的时候一般都会把缓存禁用,而且就算有缓存也立马被清掉了,所以缓存问题很容易解决,却也很容易被忽视,这不项目上线的时候遇到了这个问题,虽说不是很严重,却也很影响体验,客户才不会去清理客户端缓存什么的,所以只能在服务器端解决了;

解决办法也比较简答,就是在引入css,js文件的时候在文件名后面添加一个版本号,如:css?v=1;v后面的数字可以自己定, 只要这里面文件修改后,v改变了就行了;

建议在开发的时候定义一个全局变量,这样只需要修改一个地方就行了;

时间: 2024-08-25 22:08:26

页面防止js,css等缓存问题解决办法的相关文章

Angularjs在360兼容模式下取数据缓存问题解决办法

测试提了一个bug,在360浏览器兼容模式下,删除页面数据需要手动刷新浏览器才能看到最新的数据.首先要复现当时的问题,很容易就复现了,但是发现在360浏览器兼容模式下无法打开开发者工具.好在经过反复重装之后,终于打开了开发者工具,经过跟踪发现,第一次删除数据时可以正常刷新,第二次或以后的删除将无法刷新,跟踪代码,发现通过异步请求的数据正常的返回并且绑定了.点击搜索按钮,也无法实现刷新,但是点击分页,发现可以翻页.初步推断是浏览器缓存了异步请求数据,跟踪比较返回的数据发现,推断是正确的.于是从网上

Java实现缓存页面中不变的元素,JS,CSS,图片等

本文是Web前端性能优化系列文章中的第三篇,主要讲述添内容:加Expires头.完整教程可查看:Web前端性能优化 什么是Expires头? Expires存储的是一个用来控制缓存失效的日期.当浏览器看到响应中有一个Expires头时,它会和相应的组件一起保存到其缓存中,只要组件没有过期,浏览器就会使用缓存版本而不会进行任何的HTTP请求.Expires设置的日期格式必须为GMT(格林尼治标准时间). HTTP1.1协议中缓存的另一种选择 Expires存在着明显的不足. 首先,Expires头

js/css文件修改后浏览器本地缓存解决

本文实例讲述了让html页面随js的修改来更新缓存的实现方法.分享给大家供大家参考.具体实现方法如下: 很多朋友都会碰到这样的情况:如果我们页面加载了js的话下次打开时也会是调用这个js缓存文件,但对于我们修改后调试和发布是非常的不方便了,本文就来谈论如何解决这一问题,下面一起来看看. 一.后台编写一个 UrlCommon的js/css url的连接操作类 1 using System; 2 using System.Collections.Generic; 3 using System.Lin

Web性能优化之动态合并JS/CSS文件并缓存客户端

在Web开发过程中,会产生很多的js/css文件,传统的引用外部文件的方式会产生多次的http请求,从而加重服务器负担且网页加载缓慢,如何在一次请求中将多个文件一次加载出来?接下来给大家介绍在ASP.NET中动态合并加载多个js或css文件.原理:减少请求服务器的次数达到优化效果先给大家看一下传统引用方式和优化后的比较:1.传统引用方式(下图): 这样的引用方式将会请求5个js文件也就是5次http请求(下图): 2.我们来看看优化后(下图): 大家可以看到修改后只有一次请求,花费的时间节省了很

Jquery AjaxFileUpload.js 上传文件 所遇问题解决办法

<span style="font-family: Arial, Helvetica, sans-serif; background-color: rgb(255, 255, 255);">导入 AjaxFileUpload.js 文件</span> js代码 $.ajaxFileUpload({ url: 'upload',//处理图片脚本 secureuri : false, fileElementId : 'uploadImg',//file控件id da

关于更新发布CSS和JS文件的缓存问题

在Web应用程序大行天下的今天,我们程序员的工作大都基于B/S架构,B/S架构的优势就在于可以及时(甚至随时)更新页面以及后台逻辑,而不用通知客户去手动更新客户端.在这种环境下,是不是B/S架构的软件就真的没有升级的问题了呢? 现如今,浏览器大战下,各个浏览器也是拼了命的提高性能,升级JS解析引擎,更好的处理浏览器的页面缓存,让用户的浏览体验更快,占用更小的PC资源.那么,问题就出现在JS和CSS缓存,甚至页面缓存上.至于浏览器对页面的缓存,我们一般通过在服务端发送页面的时候设置页面的生存期,一

基于md5的解决js,css缓存问题for django

一.常见的解决方案 js,css更新的时候,由于浏览器的缓存机制,可能导致引用老的js,css而引起错误.以往常见的解决方法有两种: 1.对js,css加版本控制,例如:jquery.min.js?v=xx.xxx.xx 此种方法存在的问题是需要对版本控制进行维护,比较麻烦 2.对js,css加时间戳 此种方法存在的问题是当js或css,更改后又被还原,但是时间戳已经更改,而导致浏览器需要重新下载js,css. 二.md5解决js,css缓存问题的原理 根据js,css的内容生成一个字符串,当j

个人对php,js,css字符串截取的办法汇总

下面的是个人对php,js,css字符串截取的办法汇总,对大神来说可能没什么含量,求少喷哦,当然可以学习教程增强自己的编程能力. 首先是PHP版本的. 其实只用mb_strimwidth一个函数就可以了,该函数的说明如下: mb_strimwidth -  获取按指定宽度截断的字符串 string mb_strimwidth ( string $str , int $start , int $width [,  string $trimmarker = "" [, string $en

开发Java web时让Eclipse支持编写HTML/JS/CSS/JSP页面的自动提示

平时用eclipse开发jsp页面时智能提示效果不太理想,其实eclipse也可以像Visual Studio 2008那样完全智能提示HTML/JS/CSS代码,使用eclipse自带的插件,无需另外安装插件,具体步骤如下 1.打开eclipse→Windows→Preferences→Java→Editor→Content Assist 修改Auto Activation triggers for java的值为:zjava   点击apply按钮 如图: 2.继续打开JavaScript→