Minify压缩JS和CSS_html/css_WEB-ITnose

php中文网
发布: 2016-06-24 12:01:06
原创
1110人浏览过

minify把cssjs压缩和削减(minify:去掉空格回车符等),以及把多个css,js文件整合到一个文件里。不要以为你的大带宽没有必要进行这类优化。使用它的理由更重要的是文件合并,而不是压缩,而是文件整合,这样可以减少浏览器端不断发出新的连接请求,就像ftp服务器一样,多个小文件和一个大文件耗时是不一样的。 

minify是用php写的,项目地址 http://code.google.com/p/minify/ 

安 装 
   1. 下载最新的minify然后解压缩到minify目录。 
   2. 复制"min"目录到你的document_root. 

基本用法 
假设你有http://localhost/a.js,http://localhost/b.js两个文件。那么现在,你可以使用http://localhost/min/?f=a.js,b.js,看看浏览器返回结果,是不是minify的两个js文件的内容? 

附译min目录下的readme.txt 

百度智能云·曦灵
百度智能云·曦灵

百度旗下的AI数字人平台

百度智能云·曦灵 83
查看详情 百度智能云·曦灵

引用


该目录中的文件包含默认Minify设置,旨在简化整合您的网站。Minify将合并削减JavaScript或CSS文件,并进行HTTP压缩和缓存头。 

推 荐 
建议修改config.php中设置$min_cachePath到一个PHP可写目录。这将提高性能。 

GETTING STARTED 
最快的开始Minify的方法是使用Minify Builder应用程序的URI 
访问您的网站: http://example.com/min/builder/ 

压缩单个文件 
比方说,你要服务于这个文件: 
   http://example.com/wp-content/themes/default/default.css 
下面是“Minify网址”该文件: 
   http://example.com/min/?f=wp-content/themes/default/default.css 

换句话说,“f”参数设置为从WEB根路径下的目标文件(不需要路径/)”。由于CSS文件可能包含相对URI,Minify会自动通过重写机制找到它们。 

合并多个文件到一个文件下载 
用','分隔f参数的每一个文件名。 
比如,有如下CSS文件: 
   http://example.com/scripts/jquery-1.2.6.js 
   http://example.com/scripts/site.js 
您可以通过Minify结合起来: 
   http://example.com/min/?f=scripts/jquery-1.2.6.js,scripts/site.js 

简化基本路径 
如果你合并的文件共享同一父目录,你可以使用b参数设置的f参数的基本目录(同样不包括前导或者后缀/字符)。 
例如,以下两种写法效果相同: 
   http://example.com/min/?f=scripts/jquery-1.2.6.js,scripts/site.js,scripts/home.js 
   http://example.com/min/?b=scripts&f=jquery-1.2.6.js,site.js,home.js 

在Html中使用MINIFY 
在(X)HTML文件,不要忘记将&替换为& 

指定允许的目录 
默认情况下,Minify不会有任何DOCUMENT_ROOT范围内的*.css/*.js文件。如果你希望限制Minify存取某些目录,在config.php中设置 
$min_serveOptions ['minApp'] ['allowDirs']数组。例如:限制到/js和/themes/default目录,使用: 

Php代码  

  1. $min_serveOptions['minApp']['allowDirs'] = array('//js', '//themes/default');  


"组":更快的性能和更好的网址 
为了获得最佳性能,编辑groupsConfig.php中的预指定文件组,下面是一个例子配置: 

Php代码  

  1. return array(  
  2.     'js' => array('//js/Class.js', '//js/email.js')  
  3. );  

以上预指定js将结果是合并了如下文件: 
   http://example.com/js/Class.js 
   http://example.com/js/email.js 
现在,您可以如此简化URL: 
   http://example.com/min/?g=js 
  
组:指定document_root目录以外的文件 
在groupsConfig.php阵中,//是指向DOCUMENT_ROOT,但你也可以指定从系统的绝对目录路径或相对于document_root的相对目录: 

Php代码  

  1. return array(  
  2.   'js' => array(  
  3.     '//js/file.js'            // file within DOC_ROOT  
  4.     ,'//../file.js'           // file in parent directory of DOC_ROOT  
  5.     ,'C:/Users/Steve/file.js' // file anywhere on filesystem  
  6.   )  
  7. );  

未来过期HTTP头 
Minify可以发送未来(一年)过期HTTP头。要启用该功能,您必须添加一个数字到URIs(例如/min/?g=js&1234 or /min/f=file.js&1234),每当源文件修改时改变该数字。如果你使用SVN/CVS,你可以考虑使用修订版号作为该数字。 

如果使用"组"来合并压缩你的文件,可以使用工具函数Minify_groupUri()来得到一个“版本”的URI。例如: 

Php代码  

  1. // 之前确保min/lib目录设置到include_path  
  2. // add /min/lib to your include_path first!  
  3. require $_SERVER['DOCUMENT_ROOT'] . '/min/utils.php';  
  4. $jsUri = Minify_groupUri('js');   
  5. echo "<script></script>";  


调试模式 
在调试模式下,Minify不压缩文件,而是发送合并后的带有行号的文件。要启用该模式,在config.php中设置为$min_allowDebugFlag为true,并增加"&debug=1" 到你的URIs. 
例如:/min/?f=script1.js,script2.js&debug=1 

注:对于该模式,注释风格的字符串正则表达式可能会导致问题。 
更多问题请访问  http://groups.google.com/group/minify

相关标签:
HTML速学教程(入门课程)
HTML速学教程(入门课程)

HTML怎么学习?HTML怎么入门?HTML在哪学?HTML怎么学才快?不用担心,这里为大家提供了HTML速学教程(入门课程),有需要的小伙伴保存下载就能学习啦!

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号