首页 > 后端开发 > php教程 > Minify JS及CSS压缩PHP类

Minify JS及CSS压缩PHP类

WBOY
发布: 2016-06-20 13:04:44
原创
1345 人浏览过

Minify 是用PHP5开发的php网页压缩应用,通过遵循一些Yahoo的优化规则来提高网站的性能。它会合并多个CSS或者JavaScript文件,移除一些不必要的空格和注释,进行gzip压缩,并且会设置浏览器的缓存头。Minify 在设计上和Yahoo的 Combo Handler Service非常像,不过Minify可以合并任何你想要合并的JavaScript和CSS文件。一般情况下,网站速度的瓶颈都在前端,而最关键的就是资源的加载速度,但是大多数浏览器都有单个域名并发请求数限制,所以如果一个页面中存在很多的资源,比如CSS和JavaScript文件,那么明显会降低网站的加载速度,比较好处理方式就是把多个文件通过一个请求来访问,这样既不会影响之前的文件维护,又会减少资源的清楚数量,Minify就是为之而生。

特性:
合并多个CSS或JavaScript文件为一个文件,减少请求数量,并且进行minify处理
使用了多个开源的库,包括 JSMin.php ,Minify CSS,Minify HTML
服务端缓存(fils/APC/Memcache),可以避免不必要的重复处理
当浏览器存在资源的缓存,返回HTTP 304 Not Modified
多个文件合并时,自动生成URI
当开启服务端缓存的时候,在一般的服务器上Minify每秒可以处理几百个并发请求
根据请求头,开启Content-Encoding: gzip。在服务端缓存开启的情况下,Minify提供gzipped 文件速度比Apache’s mod_deflate模块要快

Minify安装使用

下载最新的Minify,然后解压文件到”min” 文件夹

复制 “min” 文件夹到自己网站的根目录,如果想要Minify在子目录下工作

假设网站域名是http://www.scutephp.com,Minify安装在了虚拟主机的根目录下,那么访问http://www.scutephp.com/min/,我们会看到一个“Minify URI Builder”,我们可以利用自带的这个生成工具来生成压缩合并我们的js文件和css文件。

Minify在资源首次被请求的时候,会对多个文件进行合并,gzip,去除空格,注释等处理,然后会把处理的结果进行缓存,默认情况下是进行文件缓存,缓存的key以minify_开头,修改min/config.php文件,配置缓存文件存放的位置。

$min_cachePath = '/tmp';
登录后复制

除了通过文件进行缓存之外,Minify还支持Memcache缓存,修改min/index.php文件,加入以下代码:

require &#39;lib/Minify/Cache/Memcache.php&#39;;<br />
$memcache = new Memcache;<br />
$memcache->connect(&#39;localhost&#39;, 11211);<br />
$min_cachePath = new Minify_Cache_Memcache($memcache);
登录后复制

Minify支持两种debug方式,一种是通过firephp调试PHP错误,修改min/config.php文件,加入以下代码:

$min_errorLogger = true;
登录后复制

另一种是通过在URL中加入flag进行错误调试,在min/config.php中加入

$min_allowDebugFlag = true;
登录后复制

之后就能以http://www.scutephp.com/min/f=jquery-a.js,jquery-b.js,jquery-c.js&debug=1方式进行调试了

项目地址:http://code.google.com/p/minify/


来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板