记录我工作学习生活中的点点滴滴......

合并多个js/css 提高网页加载速度
发布于 开源资源
2014-02-14 13:51:27
4304
2

了解我的朋友都知道,我现在webserver都是推荐别人使用Tengine,因为Tengine相比nginx做了很多的改进,特别是他的mod_concat模块,可以方便的把多个js和css合并到一个请求上,这符合现在很多人提倡的一个优化方向。

现在的网站表现力越来越丰富,页面加载的js和css自然也越来越多。当网站页面上的js和css太多,浏览器打开页面的速度就会很慢,明显降低了用户的体验。使用mod_concatx, 可以合并多个文件在一个http响应报文中,可以有效提高js/css的加载速度。

mod_concatx模块是在mod_concat基础上修改的。原有的mod_concat模块有很大的参考价值,但实际作用不大。该模块存在以下三个问题:
1、每次都会重新向客户端发数据,没有合理利用浏览器缓存
2、存在安全漏洞,导致服务端程序被下载,比如"/??jquery.js,common.php"
3、合并每个文件时中间没间隔,导致内容粘连在一起,可能引起错误

mod_concatx就是在mod_concat基础上,解决了前面提到的一些问题。下载地址:http://download.csdn.net/detail/cwqcwk1/6907215

使用示例


模块安装

打开apache配置文件httpd.conf

LoadModule concatx_module modules/mod_concatx.dll


高级配置:(以下是默认配置,可以不配置)

ConcatxDisable Off  
ConcatxCheckModified On  
ConcatxSeparator On  
ConcatxMaxSize 1024  
ConcatxMaxCount 10  
ConcatxFileType js,css


详细说明:

ConcatxDisable On/Off  
//是否使用mod_concatx模块  
  
ConcatxCheckModified On/Off  
//检查文件是否改动,建议On  
  
ConcatxSeparator On/Off  
//合并文件时是否加换行分隔,建议On  
  
ConcatxMaxSize 数字  
//合并文件总大小限制最大值,建议不要太大  
  
ConcatxMaxCount 数字  
//合并文件总个数限制最大值,建议不要太大  
  
ConcatxFileType js,css  
//合并文件类型限制,如不限制填","



作者提到的后期改进方向:
todo:考虑加入js,css压缩
todo:考虑支持zend解析后的文件
bug:目录存在默认页加载异常(考虑上层hook处理)

作者发布页地址:http://blog.csdn.net/mycwq/article/details/9361117



分享本文到:
除非特殊注明,本文版权归原作者所有,欢迎转载!转载请注明版权以及本文地址,谢谢。
转载保留版权:Pakey's BLog >>开源资源 >>合并多个js/css 提高网页加载速度
本文地址:http://www.pakey.net/blog/mod_concatx-for-apache.html