为nginx增加nginx_http_concat模块

非覆盖安装

因为需要加入这个新的nginx模块,所以需要重新编译nginx。为了不影响之前的ngxin,所以我们打算采用[nginx添加模块(非覆盖安装][]中的方法来实现飞覆盖安装。主要步骤如下

  1. 试用nginx -V来查看nginx的版本以及nginx带上的参数,返回如下结果,configure arguments后面是我省略了,你可以自己记住那个编译的版本试用了什么configure,然后下面会用到
    nginx version: nginx/1.2.8
    built by gcc 4.4.7 20120313 (Red Hat 4.4.7-3) (GCC)
    TLS SNI support enabled
    configure arguments: ...
    
  2. 然后去nginx上面下载对应版本的的nginx的源代码,并解压缩
    wget http://nginx.org/download/nginx-1.2.8.tar.gz
    tar xzvf nginx-1.2.8.tar.gz
    
  3. 按照nginx-http-concat上面说的,git clone一下它的源码
    git clone git://github.com/alibaba/nginx-http-concat.git
    
    1. 用第一步获得的configure aguments,然后在最后没加上如下配置,调用./configure来配置
      --add-module=/home/user/install/nginx-http-concat
      
    2. 配置OK之后就调用make
      make
      
    3. make完之后在objs目录下面找到nginx文件,然后覆盖掉当前的nginx文件即可

    配置静态目录启用nginx-http-concat

    可以参考 nginx-http-concat上面的来配置,我这边是在location下面增加了两行

    concat on;
    concat_max_files 20;
  1. location /js/ {
  2.     # 打开concat 功能
  3.     # 默认关闭
  4.     concat on;
  5.     # 允许concat最大的文件数(http://m114.org/test/??1.css,2.css,3.css…10.css) 默认最大设置十个文件。
  6.     # (默认: 10)
  7.     # concat_max_files 10;
  8.     # 只允许相同类型的文件(例:http://m114.org/test/??m114.css,m23.js 默认情况下是不允许的)
  9.     # 默认是开启的
  10.     # concat_unique on;
  11.     # 允许内容的类型
  12.     # (default: application/x-javascript, text/css)
  13.     # concat_types text/html;
  14. }

发表回复