使用nginx-http-concat添加nginx资源请求合并功能
1.下载 这是https://github.com/alibaba/nginx-http-concat网址 cd /usr/local/src wget https://github.com/alibaba/nginx-http-concat/archive/master.zip -O nginx-http-concat-master.zip
2.解压 unzip nginx-http-concat-master.zip
3.再配置下nginx编译参数
查看版本号以及配置信息(目录/模块) 这很重要,因为我们需要安装同一个版本来升级数据
/usr/local/nginx/sbin/nginx -V
也就是在原来的配置上添加 --add-module=--add-module=/usr/local/src/nginx-http-concat-master (解压目录)
make之前备份配置文件,防止意外
cp -r /usr/local/nginx/conf /root/nginxconf
编译安装
make && make install
二、配置使用nginx-http-concat模块
1、配置项
1) concat ,是否打开资源合并开关,选项:on | off,默认:off
2) concat_types ,模块处理的资源类型,默认:text/css application/x-javascript
3) concat_unique ,是否允许合并不同类型的资源,选项:on | off,默认:on
4) concat_max_files ,允许合并的最大资源数目,默认:10
5) concat_delimiter ,合并后的文件内容分隔符,用于区分不同文件的内容
6) concat_ignore_file_error ,是否忽略404或403错误,选项:on | off,默认:off
server { listen 80; server_name localhost; index index.html index.htm; root /html; location /static/css/ { concat on; //开启 concat_max_files 20; //最大合并文件数量是20个 concat_delimiter /* my file */; // concat_unique off; concat_types text/css application/javascript; } location /status { stub_status on; access_log off; } location ~ .*\.(gif|jpg|jpeg|png|bmp|swf|js)$ { expires off; } }
重启nginx,命令:/usr/local/nginx/sbin/nginx -s reload
创建测试文件,在web目录下创建/static/css目录,并创建文件a.css、b.css,内容随意。
请求地址:http://localhost/my-web/static/css??a.css,b.css,如看到返回a.css、b.css合并内容,则整个配置完成。注意,url中static/css目录必须真实存在,且a.css与b.css必须位于此目录中。