您的位置:首页 > 运维架构 > Nginx

nginx_concat_module 安装和配置

2015-02-06 11:08 786 查看




简介

nginx_concat_module
 是 淘宝研发的针对
nginx 的文件合并模块 ,主要用于 合并前端代码减少 http 请求数 。如果你的应用环境中部署了
nginx,那么可以考虑尝试此模块减少请求数。


安装

安装 
nginx_concat_module
 需要重新编译 nginx。 可以从这里
checkout 最新的代码 ,
svn checkout http://code.taobao.org/svn/nginx_concat_module/trunk/ $NGINX_CONCAT_MODULE


然后下载适合你自己版本的 nginx 源码包 ,在 ./configure 中增加参数
--add-module=$NGINX_CONCAT_MODULE


就可以继续 nginx 的编译安装过程。


Tips

顺便废话下,默认编译 nginx 的 gcc 参数带了 「-g」 开关。处于洁癖和性能考虑,可以考虑将其关闭。编辑文件
$NGINX_SOURCE_DIR/auto/cc/gcc


注释掉下面的行
CFLAGS="$CFLAGS -g"


如果觉得有必要,可以修改下面的编译参数(感觉性能提高不大)
NGX_GCC_OPT="-O2"


配置

新的 nginx 编译安装好以后,配置 
nginx_concat_module
 主要有如下的选项
# nginx_concat_module 主开关
concat on;

# 最大合并文件数
# concat_max_files 10;

# 只允许同类型文件合并
# concat_unique on;

# 允许合并的文件类型,多个以逗号分隔。如:application/x-javascript, text/css
# concat_types text/html;


(详细察看安装包下 INSTALL 和 README 文件)。其实不用那么复杂,简单的配置
location / {
concat    on;
}


就可以合并 javascript、css 等文件了(顺便注意是否和 rewrite 规则冲突)。


使用



上面的图可以说明如何使用 
nginx_concat_module
 。随着以后的深度使用, 如果感觉 url 过长, 那么就要考虑另一种优化了 。

ps,再罗嗦句,有关 
nginx_concat_module
 性能方面的忧虑,我想应该可以让人放心,尤其是看了淘宝首页的源代码以后
:^)

有关 
nginx_concat_module
 的任何意见和建议,可以联系其作者 
Joshua
Zhu <shudu[at]taobao.com>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  nginx_concat_module