知道我可以修改像
这样的js和css文件选项1:
myJavaScript.js?V =#myVersionNumber#
myCSS.css?V =#myVersionNumber#
,这将使客户端执行条件GET请求,最佳案例场景获得304响应。我可以通过不同的版本控制策略来消除此http请求,例如
选项2:
myJavaScript。#myVersionNumber#的.js
myCSS。#myVersionNumber#的CSS
我想知道是否有任何好的理由(假设两个选项都具有相同的可维护性),这将使我继续使用Option1。
谢谢你的帮助。
答案 0 :(得分:7)
我认为你的版本控制并不像控制缓存一样多。使用第二种方法,我会担心在源控制系统中存储多个文件,如果您存储单个文件,它将累积历史记录并且可以更轻松地进行管理。然后,您可以通过更改网址中的参数来发布新文件。
答案 1 :(得分:1)
以下是一篇可以帮助您解决此问题的文章......
Automatically Version Your CSS and JavaScript Files
此代码在php中,以及您网站的.htaccess文件中的一些修改,可能需要更多关注,否则您的网站可能会崩溃。
答案 2 :(得分:0)
myJavascript-1.js不是最简单的选择吗?并且,只要在每次修改文件时加载文件名和源代码中的那个数字?不需要查询字符串。当您发布新版本时,缓存总是失败。
有时会有理由让旧版本仍然可用,以避免带有缓存HTML页面的客户端在多个不同文件中混合使用新旧版本,这样可以在文件系统中轻松存在新旧版本您的服务器同时(如果需要)。