日期:2014-05-17  浏览次数:20593 次

JS和CSS压缩器,以及nginx的concat模块

?

一、一个是js 和 css的文件压缩器

其实是两个工具,我把它们合在一起
1. 首先是,老牌的?YUI Compressor?。
很简单 ,?http://developer.yahoo.com/yui/compressor/? 只要下载一个jar包,就可以了
使用方式:

?

 java -jar yuicompressor-x.y.z.jar [options] [input file]

?

具体的 options 可以通过 java -jar yuicompressor-x.y.z.jar -h 查看,
这里最好通过参数指定一下编码 --charset utf-8,默认会采用系统编码

2. 然后是,Google的?Closure Compiler,它是专门正对js的 编译器(不仅仅是压缩)
官方地址:?https://developers.google.com/closure/compiler/
使用方式:

java -jar compiler.jar --js [INPUT_FILE] --js_output_file [OUTPUT_FILE]

默认编码是 输入文件为utf-8,输出为ASCII

它有三种编译的等级用以下参数指定:

--compilation_level [WHITESPACE_ONLY | SIMPLE_OPTIMIZATIONS | ADVANCED_OPTIMIZATIONS]

默认采用SIMPLE_OPTIMIZATIONS, 请谨慎使用高级模式(ADVANCED_OPTIMIZATIONS)

测试了一下发现Closure Compiler的 压缩率会比YUI Compressor?高一些(大概将近10%)
所以,我一般用Closure Compiler压 缩js,用YUI?Compressor压缩 css,写了一个简单的脚本

?