快捷搜索:

WEB高性能开发之疯狂的HTML压缩

一样平常我们启动gzip都对照少对html启动gzip,由于现在的html都是动态的,不会应用浏览器缓存,而启用gzip的话每次哀求都必要压缩,会对照耗损办事器资本,对js,css启动gzip对照好是由于js,css都邑应用缓存。我小我感觉的压缩html的最大年夜好处便是一本万利,只要写好了一次,今后所有法度榜样都可以应用,不会增添任何额外的开拓事情。

在“JS、CSS的合并、压缩、缓存治理”一文中说到自己写过的1个自动合并、压缩JS,CSS,并添加版本号的组件。此次把压缩html的功能也加入到该组件中,流程很简单,便是在法度榜样启动(contextInitialized or Application_Start)的时刻扫描所有html,jsp(aspx)进行压缩。

压缩的留意事变:

实现的要领主如果用正则表达式去查找,调换。在html压缩的时刻,主要要留意下面几点:

1. pre,textarea 标签里面的内容款式必要保留,不能压缩。

2. 去掉落html注释的时刻,有些注释是不能去掉落的,比如: .....

3. 压缩嵌入式js中的注释要留意,由于可能注释符号会呈现在字符串中,比如: var url = "http://www.cnblogs.com"; // 前面的//不是注释

去掉落JS换行符的时刻,不能直接跟一下行动内容,必要有空格,斟酌下面的代码:

else

return;

假如不带空格,则变成elsereturn。

4. jsp(aspx) 中很有可能会应用嵌入一些办事器代码,这个时刻也必要零丁处置惩罚,里面注释的处置惩罚措施跟js的一样。

源代码:

下面是java实现的源代码,也可以 猛击此处 下载该代码,信托大年夜家都看的懂,也很轻易改成net代码:

复制代码 代码如下:

您可能还会对下面的文章感兴趣: