在互联网应用中,为了提高用户的浏览速度,开发人员需要让浏览器准确的缓存资源文件,如JS,CSS和图片文件。所以需要在使用JS和CSS文件时加一个时间戳。因为如果文件名一样,但时间戳不一样,浏览器会认为是不同的文件而重新下载,不使用缓存,如hello.js?V=20120212
时间戳的设计方案
方案 |
使用场景 |
优点 |
缺点 |
不使用时间戳 |
发布频率非常高,如每日都有多次发布 |
不需要实现时间戳管理 |
没有缓存,影响用户访问速度。 |
每次项目发布更新所有静态资源的时间戳 |
发布频率比较低,如每月一次发布 |
实现比较简单 |
每次项目发布,用户需要更新所有静态资源的缓存。 |
发布时候,只更新修改过静态资源的时间戳 |
发布频率不是非常频繁。 |
为浏览器提供了非常准确的缓存 |
实现比较复杂,有很多问题需要解决 |
使用apache的缓存配置 |
发布频率较高,如每周几次 |
不需要实现时间戳 |
适用场景较少。 |
当然方案3是最好的解决方案,通过SVN接口找到本次项目修改的文件也不难,但是修改时间戳时有几个问题比较麻烦。
- 如果用户使用JS来导入JS,这里面的JS文件也需要更新,那么需要解析JS文件。
- CSS文件里引用了图片,需要更新图片的时间戳,那么需要解析CSS文件。
使用apache的缓存配置。设置文件的缓存周期为1天。
ExpiresActive on
#缓存1天。
ExpiresBytype text/css "access plus 1 days "
ExpiresByType application/x-javascript "access plus 1 days "
ExpiresByType image/jpeg "access plus 1 days "
Expiresbytype image/gif "access plus 1 days "
分享到:
相关推荐
例如,从易语言的日期时间类型转换到文件时间戳,再从文件时间戳转换回易语言可读的日期时间格式。 3. **时间计算**:模块可能包含了对时间戳的加减运算,例如计算两个时间戳之间相差的秒数、分钟数、小时数或者...
文章首先介绍了数字时间戳认证在现实世界中的必要性,特别是在电子商务和电子政务中防止电子文件被篡改的重要性。接着,文章详细阐述了数字时间戳认证中心(TSA)的工作原理及其在公钥基础设施(PKI)中的角色。 ...
"取文件时间和设置时间源码"指的是通过易语言编写的功能模块,用于获取文件的创建时间、修改时间或访问时间,并能够设置文件的时间戳。 在易语言中,可以使用相关的系统调用函数来实现这些操作。例如,"取文件时间...
_=`,这里的`_=`可以自动由JavaScript生成为当前时间的时间戳,这样每次请求都会附带一个不同的参数值,使得浏览器认为是新资源,从而绕过缓存加载最新文件。 3. **设置HTTP响应头**:在服务器端,可以通过设置HTTP...
这对于开发者来说非常实用,特别是在处理服务器请求、日志分析和时间相关的程序设计时。 **图片Base64转换** 图片Base64转换是将图片数据编码成Base64字符串的过程。Base64是一种用64个字符(A-Z,a-z,0-9,+和/...
这个时间戳转换程序的源码是一个很好的学习资源,可以帮助开发者深入理解QT库和C++中时间日期处理的技巧,同时也能提高GUI编程的能力。通过分析和理解源码,我们可以学习到如何利用QT库创建一个实用的桌面应用,以及...
"【金山】OFD资源文件阅读器"就是这样一款专为处理OFD(Open Fixed Document Format)格式文件而设计的应用软件。OFD文件是国家推荐的一种电子文档格式,尤其在电子发票领域应用广泛,旨在提升电子文件的安全性和...
在这个特定的程序中,它不仅实现了基本的截图功能,还增加了将多个图片与相关信息整合到一个资源文件中的能力,以供其他程序调用。这在软件开发和应用集成中是非常实用的。 资源文件是一种特殊类型的文件,它包含了...
【标题】"千炮金蟾游戏源码(难度控制+机器人+资源文件)"涉及的核心知识点主要涵盖以下几个方面: 1. **游戏源码**:源码是游戏开发的基础,它包含了游戏逻辑、算法、数据结构以及游戏规则等核心部分。在这个项目中...
- 删除目录:删除目录需要递归处理其下的所有子目录和文件,确保所有资源被正确释放。在删除非空目录时,通常需要确认用户是否希望连同其内容一起删除。 - 查看目录内容:列出目录中的文件和子目录,可以按名称、...
3. 选择需要提取的资源,可能通过文件类型、大小、时间戳等条件进行筛选。 4. 工具将选定的资源导出到指定的目录,方便后续使用。 5. 对导出的美术资源进行整理和分类,便于管理和进一步的编辑。 这个过程可能涉及...
"操作系统文件管理.doc"可能包含关于文件系统设计、实现细节以及最佳实践的详细文档,而"file.zip"则可能是一个包含其他相关文件的压缩包,如源代码、示例配置文件或额外的文档资源。解压"file.zip"后,用户可以...
总之,"文件创建日期修改器"是IT专业人士和爱好者手中一个宝贵的工具,它不仅提供了修改文件时间戳的功能,还提供了源代码学习的机会,有助于提升编程技能和理解文件系统操作。通过掌握这类工具的使用和原理,我们...
1. **资源版本控制**:为了确保浏览器总是获取最新的资源,我们可以为每个静态文件添加版本号或时间戳。这样,当文件更新时,URL也会改变,迫使浏览器重新下载。 2. **CDN(内容分发网络)集成**:静态资源可以通过...
本资源包针对“深入浅出TDMS文件格式(上)”的网络讲座提供了相关的例程和演讲稿,帮助用户更深入地理解和应用TDMS。 首先,TDMS是由美国国家仪器公司(National Instruments, NI)开发的一种开放的、基于XML的...
在IT领域,尤其是在软件...同时,这也是一个很好的实践,可以帮助开发者提升文件操作、GUI设计和系统级编程的技能。在实际开发中,类似的应用可能还需要考虑国际化、多平台支持、文件过滤、搜索功能等更复杂的需求。
通过分析和运行这个demo1.e文件,我们可以了解到如何在易语言中获取当前时间的时间戳,以及如何将时间戳转换为易语言可读的日期和时间格式。 首先,易语言中获取当前时间戳的方法是使用“系统时间”命令。这个命令...
例如,如果你是一名游戏开发者,需要提交一批资源文件,而这些文件的创建时间各不相同,客户希望它们看起来像是同一时间创建的,那么这个工具就非常实用。 总的来说,批量修改文件时间的小工具是提高工作效率、满足...
在这个场景中,我们需要使用到“打开文件”、“读取文件属性”等函数,特别是“读取文件属性”中的“获取文件修改日期/时间”功能,来获取每个文件的最后修改时间戳。 2. 文件夹遍历:使用“列出文件或目录”函数,...
接着是COFF(Common Object File Format)头,包含了关于文件的基本信息,如机器类型、文件数、时间戳等。 - **NT头**:COFF头后面是NT头,它包含两个子结构——文件头和可选头。文件头定义了程序的类型(DLL或可...