如何处理javascript和css的文件在网站?
题
我有一些想法最近关于如何处理共享的javascript和css文件的跨网络应用程序。
在目前的网络应用程序,我的工作我得到了相当大量的不同javascript和css文件都放在一个文件夹在服务器上。一些文件是重复使用,而其他的则不是。
在生产的网站,这是相当愚蠢到有大量HTTP请求和许多千字节的不必要的javascript和冗余css正在加载。解决这当然是创建一大捆绑的文件,每页的,仅包含必要的信息,然后是最小化和发送压缩(GZIP)的客户。
有没有后顾之忧,以创建一个包javascript文件,并尽量减少他们的手如果你要做一次,但由于程序是不断维持和事变和发展,它很快变成一个头痛的问题做这个手动,同时推出新的更新的特点改变以javascript和/或css的文件生产。
什么是一个很好的方法来处理这个吗?你怎么处理这个在你的应用程序?
其他提示
CSS文件可分类并划分为逻辑部分(如常用的,打印对),然后你可以使用CSS的导入功能成功加载CSS文件。这些小文件重复使用也使得它可以使用客户端缓存。 当涉及到的Javascript,我觉得你可以解决在服务器端解决此问题,添加到页面的多个脚本文件,还可以动态生成脚本文件服务器端,但对于客户端缓存工作,这些部件应该有不同的和静地址。
我写了一个ASP.NET 处理前段时间,结合,压缩/minifies,gzip,并缓存的原CSS和Javascript源码文件的需求。将在三CSS文件,例如,它看起来喜欢这个标记...
<link rel="stylesheet" type="text/css"
href="/getcss.axd?files=main;theme2;contact" />
该getcss.axd处理程序读查询字符串中和确定其文件需阅读,并缩小(在这种情况下,它看起来的文件被称为主。css,theme2.css和接触。css)。当它完成阅读该文件,并压缩,它储存的大缩小的字符串中server-side cache(RAM)几个小时。它看起来总是在缓第一,以便在随后的请求中它没有重压缩。
我喜欢这个解决方案,因为...
- 它减少请求的数量尽可能多的
- 没有额外的步骤都需要部署
- 这是很容易保持
只有下面是,所有样式/脚本代码最终会被储存在服务器的存储器。但RAM是这么便宜,如今,它不是作为大的一笔交易,因为它用来进行。
此外,有一件事值得一提的是,确保查询串不是succeptible到任何有害的路径操纵(仅允许在A-Z and0-9).