如何解决管理静态资源的版本控制的方法:javascript / css / html文件等
|| 我正在使用具有大量静态资源的RIA系统。 旧版系统在构建过程中重命名静态文件(具有版本号),并且该过程贯穿所有页面(存储在旧版数据库中)并更新链接中的文件名。 现在,我们与此Asp.Net MVC应用程序一起运行。两个系统共享静态资源的事实使情况变得更加复杂。 我正在考虑将版本号放入web.config,然后从本文中添加代码的修改后的版本:http://www.codeproject.com/KB/aspnet/autojscssversion.aspx,然后让遗留进程管理两个系统的所有静态资源上的编号。 有谁遇到过更好的方法来管理这种事情? 尽管有些笨拙,但我还是有些惊讶-有更好的方法吗?解决方法
确保浏览器下载最新版本的静态文件的常用方法是将查询字符串附加到URL。
例如,您的应用程序将请求类似“ 0”的请求。
这可能会降低构建过程的复杂性,因为在构建过程中不需要重命名任何文件。然后,您可以简单地将内部版本号/版本号放入配置文件中,并更改所有URL以在运行时添加版本查询字符串。
, 对于将静态资源调用切换到包含的文件,我不能说足够好。这听起来非常容易,但是自从我走了这条路以来,我的维护开销几乎减少了。一项更改将修复每个页面。是的,加载某些文件可能不会在某些页面上使用,这会增加一些开销,但在宏伟的方案中,它很小并且可以通过缓存来抵消。
从方案的角度来看,我有一个命名约定,该文件的文件名以代码库(jquery,themeroller等)为前缀,后跟一个点,再加上脚本名称,后跟一个点和js。
另外,请尽可能利用CDN托管代码。 Google和Microsoft通过CDN托管了多个项目,这些项目将比大多数人的服务器更快地加载给用户。它还在服务器之间分配HTTP连接,从理论上讲,这也应该会稍微提高性能。 Google有一些独特的策略来处理CDN托管文件的版本控制,这也可能非常有用。一个缺点是CDN托管代码仅可用于大型项目(如JQuery等),当您使用那里的许多其他优质脚本之一时,这对您没有帮助。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。