带来一篇nginx中利用nginx-http-concat模块兼并静态资本文件
如果你只是想应付一下操作系统的课程,劝你最好别学,或者说不要指望能用的怎么样。起首懂得一下nginx-http-concat,他是一个淘宝的开源Nginx模块,是一个能把多个CSS和JS兼并成一个哀求的Nginx模块,关于Web功能优化十分成心义。
Github地点:https://github.com/alibaba/nginx-http-concat,
先看看淘宝用起来是甚么样的,会见淘宝网主页,检察源代码能够看到相似的如许的style/script链接
代码以下:
<linkrel="stylesheet"href="http://www.poluoluo.com//g.tbcdn.cn/??tb/global/2.1.6/global-min.css,tb/tb-fp/1.2.3/style-min.css?t=20130912">
<scriptsrc="//g.tbcdn.cn/??kissy/k/1.3.1/seed-min.js,tb/global/2.1.6/global-min.js,tb/tb-fp/1.2.3/core-min.js?t=20130912"></script>
是否是很奇妙,只必要一个哀求,就能够把必要的CSS/JS文件经由过程兼并的体例把他输入成一个文件(注重,固然淘宝有min格局的文件,可是这里它仅仅是兼并多个文件,而不会主动的对其紧缩打包文件)
起首我们先从Git高低载安装它
代码以下:
#下载
$gitclonegit://github.com/alibaba/nginx-http-concat.git
#挪动目次
$mvnginx-http-concat/usr/local/src/nginx-http-concat
检察原始Nginx版本,这很主要,由于我们必要安装统一个版原本晋级数据
代码以下:
#检察版本号和设置信息(目次/模块)
$/usr/local/nginx/sbin/nginx-V
nginxversion:nginx/1.3.1
TLSSNIsupportdisabled
configurearguments:--prefix=/usr/local/nginx--with-http_stub_status_module--with-http_ssl_module--with-http_gzip_static_module
依据查询的版本号下载对应版本的nginx,能够到官方下载指定版本:http://nginx.org/download/
我这里利用的是1.3.1
代码以下:
$wgetnginx-1.3.1.tar.gz
$tarzxvfnginx-1.3.1.tar.gz
$cdnginx-1.3.1
#依据下面-V的信息到场concat模块地点路径(--add-module=/usr/local/src/nginx-http-concat)举行编译
$./configure--prefix=/usr/local/nginx--with-http_stub_status_module--with-http_ssl_module--with-http_gzip_static_module--add-module=/usr/local/src/nginx-http-concat
make之前备份设置文件,避免不测
代码以下:
$cp-r/usr/local/nginx/conf/root/nginxconf
#编译安装
$make&&makeinstall
接上去就是设置你的静态服务器conf文件
代码以下:
server{
listen80;
server_namestatic.dexphp.loc;
indexindex.htmlindex.htm;
root/mnt/siteroot/static.dexphp.com;
location/static/css/{
concaton;
concat_max_files20;//最年夜兼并文件数目是20个
}
location/status{
stub_statuson;
access_logoff;
}
location~.*.(gif|jpg|jpeg|png|bmp|swf|js)${
expiresoff;
}
error_log/mnt/siteroot/wwwlogs/static.dexphp.loc.error.log;
access_log/mnt/siteroot/wwwlogs/static.dexphp.loc.access.log;
}
要多动手,不要怕什么搞坏了怎么办,你不搞坏,不去动手,就永远不会有收获,既然你在linux中是自由的,那就发挥自己的权利; 发问的时候一定要注意到某些礼节。因为Linux社区是一个松散的组织、也不承担回复每个帖子的义务。它不是技术支持。 选择一些适于初学者的Linux社区。 如果你有庞大而复杂的测试条件,尽量把它剪裁得越小越好。可能你会遇到这种情况,对于一个问题会出现不同内容回答,这时你需要通过实践来验证。 在系统检测不到与Linux兼容的显卡,那么此次安装就可能不支持图形化界面安装,而只能用文本模式安装等等。 随着Linux应用的扩展,出现了不少Linux社区。有一些非常优秀的社区往往是Linux高手的舞台,如果在探讨高级技巧的论坛张贴非常初级的问题经常会没有结果。 眼看这个学期的Linux课程已经告一段落了,我觉得有必要写一遍心得体会来总结一下这学期对着门课程的学习。 掌握在Linux系统中安装软件,在安装Linux工具盘后大致日常所需的软件都会有,一般网络提供下载的软件都会有安装说明。 目前全球有超过一百多个Linux发行版本,在国内也能找到十几个常见版本。如何选择请根据你的需求和能力,RedhatLinux和DebianLinux是网络管理员的理想选择。
页:
[1]