现在的网站表现力越来越丰富,页面加载的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/9213863(内附源码,dll,2015-10-26 更新了gzip支持)
Git托管地址:https://github.com/chenweiqi/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
//合并文件类型限制,如不限制填","
支持gzip
gzip压缩依赖其他原生apache模块mod_deflate,开启方法如下:
打开apache配置文件httpd.conf
LoadModule deflate_module modules/mod_deflate.so
常见问题:
1、如果加载模块后apahce无法启动,请安装vc10运行库。这是因为我这里提供的dll都是vc10编译的,地址如下:
32位地址,64位地址
2、linux下安装mod_concatx模块,方法猛击这里
最后语
建议自己编译这个模块,安全放心
2015/10/26 增加gzip支持
2015/6/13 解决目录存在默认页加载异常
2015/6/13 解决文件后面带? 无法解析问题
参考:http://blog.csdn.net/mycwq/article/details/9361117
分享到:
相关推荐
Apache模块mod_concatx是针对Apache服务器的一个高效工具,它的主要功能是合并多个JavaScript(js)和样式表(css)文件,以减少HTTP请求的数量,从而显著提升网页加载速度。这一特性对于优化网站性能,尤其是对...
Apache模块mod_concatx是针对Web服务器性能优化的一个实用工具,主要功能是合并多个JavaScript(js)和 Cascading Style Sheets(css)文件,以此减少HTTP请求的数量,从而显著提升网页加载速度。这一技术被称为...
Apache模块mod_concatx是针对网页优化的一个利器,它专门设计用于提高JavaScript和CSS文件的加载速度。这个模块通过合并多个JS和CSS文件为一个请求,减少了HTTP请求的数量,从而显著提升了网页的加载效率,这对于...
在Windows环境下,优化网页加载速度的一个有效方法是通过Apache服务器的模块来合并多个JavaScript (js) 和 Cascading Style Sheets (css) 文件。本篇将介绍如何利用一个基于mod_concat修改的模块——mod_concatx,来...
RequireJS 提供了一种遵循 AMD(Asynchronous Module Definition)规范的模块化方式,AMD 适用于浏览器环境,它允许多个模块并行加载,提高了页面的加载速度。在 RequireJS 中,我们定义模块和依赖,然后通过 `...
- **合并 CSS** (`combine_css`):将多个 CSS 文件合并成一个文件,减少 HTTP 请求次数。 - **重写 CSS 和 JavaScript** (`rewrite_css`, `rewrite_javascript`):优化 CSS 和 JavaScript 文件,减小文件大小。 - **...
2. **压缩输出**: 使用mod_deflate模块对HTML、CSS、JavaScript等内容进行GZIP压缩,减小传输数据量,加快页面加载速度。 3. **缓存机制**: 利用mod_expires和mod_headers模块设置资源的过期时间,让浏览器缓存静态...
这个模块由谷歌开发,旨在自动优化网页加载速度,通过一系列的技术手段减少页面的加载时间,提高用户体验。 【描述】中提到的"谷歌偶尔抽风"可能是指Google服务器的不稳定,导致有时无法正常下载"mod_pagespeed"。...
Apache服务器可以使用mod_expires模块来配置缓存时间,例如设置为“access plus 1 month”,这样资源在一个月内都将被浏览器缓存,避免不必要的网络请求,显著提升加载速度。 3. **减少HTTP头部信息**:注意HTTP...
mod_pagespeed是由Google开发并开源的一个Apache HTTP Server模块,旨在通过一系列自动化的优化技术来提高Web页面的加载速度。它无需对现有网站代码进行任何修改,安装完成后重启Apache服务器即可生效。mod_page...
Pagespeed 是一个模块,可与 Apache 和 Nginx 服务器集成,通过对网页内容进行一系列自动优化,如压缩、合并 CSS 和 JavaScript 文件、延迟加载图片等,来提升网页的加载速度。 在描述中提到的博文链接...
20. **减少HTTP请求数**:通过合并CSS和JavaScript,使用CSS Sprites,减少HTTP请求次数,提升页面加载速度。 21. **使用CDN**:内容分发网络可以加速静态资源的分发,减轻服务器压力。 22. **Apache程序架构优化*...
- **合并文件**(Combined files):将多个小文件合并成一个较大的文件进行传输,例如通过CSS Sprites技术将多个小图像文件合并为一张大图,并利用`CSS background-image` 和 `background-position`属性来实现原本...
这个系统可能包括了用户界面、后台管理、订单处理、支付接口、库存管理等多个模块,旨在为小型企业提供一个可定制、易于维护的电子商务平台。接下来,我们将详细讨论这个系统可能涉及的关键知识点。 1. **前端技术*...
9. **减少HTTP请求**:合并CSS和JavaScript文件,减少HTTP请求次数,同时使用CSS Sprites技术合并图像,也能提高加载速度。 10. **异步加载和懒加载**:对于非关键内容,如评论、广告,可以使用异步加载,只在需要...
2. 使用内容分发网络(CDN):CDN能够将网站内容分发到全球的多个服务器上,用户可以从最近的服务器获取内容,从而显著提高加载速度。特别是对于大文件如视频和图像,CDN的使用尤为重要。 3. 添加Expires头:设置...
本篇文章主要讲述在PHP中如何使用Gzip压缩技术来压缩并传输JavaScript和CSS文件,以提高网页加载速度和减少带宽消耗。 首先,我们需要了解Gzip压缩工作的基本原理。Gzip是一种流行的文件压缩程序,它可以减小文件...
10. **SpriteMe**:这是一个工具,简化CSS精灵的创建,通过合并多个图像为一张大图,提高网页加载速度。 11. **Reducisaurus**:这是一个基于YUI压缩算法的在线服务,用于压缩CSS和JavaScript文件,优化网页性能。 ...