`
444878909
  • 浏览: 635766 次
文章分类
社区版块
存档分类
最新评论

apache模块 合并多个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_concat基础上写了mod_concatx模块,解决了前面提到的一些问题。

下载地址:http://download.csdn.net/detail/cwqcwk1/5772753(内附源码,dll)

Google托管地址:http://code.google.com/p/apmod/


使用方法:

<link href="/style/??css1.css,css2.css,css3.css" type="text/css" rel="stylesheet"/>
<script src="/js/??js1.js,js2.js,js3.js,js4.js" type="text/javascript"></script>

模块配置:
打开apache配置文件httpd.conf

LoadModule concatx_module modules/mod_concatx.dll

高级配置:(以下是默认配置,可以不配置)
<IfModule concatx_module>
ConcatxDisable Off
ConcatxCheckModified On
ConcatxSeparator On
ConcatxMaxSize 1024
ConcatxMaxCount 10
ConcatxFileType js,css
</IfModule>

详细说明:
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处理)

分享到:
评论

相关推荐

    apache模块 合并多个js/css 支持gzip

    apache模块mod_concatx 合并多个js/css,有效提高js/css加载速度,有源码和dll,和说明文档。 支持Apache2.2和Apache2.4 32位/64位版本,支持gzip

    apache模块 合并多个js/css 更新64位版本

    apache模块mod_concatx 合并多个js/css,有效提高js/css加载速度,有源码和dll,和说明文档。 更新64位的Apache2.2和Apache2.4版本

    apache模块mod_concatx 提高js/css加载速度

    apache模块mod_concatx 提高js/css加载速度,有源码和dll,和说明文档

    Windows下使用apache模块实现合并多个js、css提高网页加载速度

    主要介绍了Windows下使用apache模块实现合并多个js、css提高网页加载速度,本文使用的模块是基于mod_concat自己修改的,需要的朋友可以参考下

    css,js合并优化工具

    1.目录source:需要压缩的源文件 ...4.合并压缩css.bat 根据source将css进行合并到in目录,并输出到out目录 5.合并js.bat 只将source下数据合并到in目录 6.合并js.bat 只将in下数据合压缩处理到out目录

    Apache模块开发

    Apache模块开发指南

    怎样在apache2.2.17中加载PHP模块

    怎样在apache2.2.17中加载PHP模块怎样在apache2.2.17中加载PHP模块

    Apache apr/apr-util/pcre 模块

    Apache2.4.1的安装必备的三个模块。 APR(Apache portable Run-time libraries,Apache可移植运行库)的目的如其名称一样,主要为上层的应用程序提供一个可以跨越多操作系统平台使用的底层支持接口库。在早期 的Apache...

    apache 开启重定向 rewrite的实现方法

    apache 开启重定向 rewrite的实现方法 1.开启重定向模块 $ ln -s /etc/apache2/mods-available/rewrite.load /etc/apache2/mods-enable/rewrite.load 2.修改配置文件(某些php框架需要) $ vim /etc/apache2/...

    apache 模块开发的例子

    apache可以通过扩展它的模块来实现自定义功能,apache 模块开发的例子,欢迎交流。

    Apache模块开发指南

    《LAMP技术精品书廊•Apache模块开发指南》主要介绍了Apache模块开发的全过程。全面细致、深入浅出,主要内容包括Apache相关背景、APR的基础知识,以及利用Apache模块开发的全过程,适合广大在Apache环境下的模块...

    APACHE模块开发指南

    apache模块开发指南,汉语版,很辛苦找到的。

    jdk、apache commons 、jquery 、JavaScript、css+api

    jdk、apache commons 、jquery 、JavaScript、css等各种api,希望给你带来帮助

    apache模块开发指南(中文版)

    Apache的开发人员认识到Apache 最初的架构具有局限性,比较粗糙,于是在2000年开始建立新的代码仓库(codebase)主分支,并在此代码仓库的基础上于2002年4月创建了Apache2.0的第一个发布版本。Apache 2包括以下优良...

    Apache2.4 64位

    37行: ServerRoot "apache目录" (e.g. 'c:\apache24' 改为 d:\apache) 217行:ServerName 服务器名称 (e.g demo.app.com or 127.0.0.1)去掉# 241行: DocumentRoot 修改网站根目录地址 242行:网站根目录...

    apache模块化体系结构简析

    APACHE采用了分层与模块化的体系结构 APACHE核心功能层 挂钩(HOOK)介绍 挂钩使用 APACHE 2.0系列的模块结构 模块与核心的交互

    apache模块开发入门

    学习apache模块开发的基础学习文档,非常好用。

    jxcore-cordova, 用于 Apache cordova/phonegap的jxcore/node.js 插件.zip

    jxcore-cordova, 用于 Apache cordova/phonegap的jxcore/node.js 插件 ( 基于 JXcore插件构建的) 插件插件目标这里项目的目的是:为 Apache Cordova ( Android,iOS ) 创建一个易于使用的node.js 插件详细显示jxcore...

Global site tag (gtag.js) - Google Analytics