nginx淘宝网升级Tengine实现多文件合并加载
2013-03-15 14:31
155 查看
Tengine是由淘宝核心系统部基于Nginx开发的Web服务器,它在Nginx的基础上,针对大访问量网站的需求,添加了很多功能和特性。Tengine的性能和稳定性已经在大型的网站如淘宝网,淘宝商城等得到了很好的验证。它的最终目标是打造一个高效、稳定、安全、易用的 Web 平台。Tengine现已开源。
淘宝网现在已经将其服务器平台软件Tengine 开源,已提供下载。Tengine基于Nginx,针对大流量网站需求增加了很多功能特性和性能优化。以下沿引项目主页上的特性介绍:
继承Nginx-1.0.10的所有特性;
组合多个CSS、JavaScript文件的访问请求变成一个请求;
支持管道和syslog形式的日志和抽样;
自动根据CPU数目设置亲缘性;
监控系统的负载和资源占用从而对系统进行保护;
显示对运维人员更友好的出错信息,便于定位出错机器;
更强大的访问速度限制模块;
backtrace模块,程序崩溃的时候可以显示出错的调用栈
项目主页提供中英文界面,帮助文档仍在完善中。
开源通告:http://tengine.taobao.org/opensource_cn.html
安装编译Tengine:
1、下载软件包:
wget http://tengine.taobao.org/download/tengine-1.2.0.tar.gz
2、安装pcre,如果已经安装yum服务,请直接使用:yum install pcre,
否则请去官方下载安装如下:
cd /usr/local/src
tar zxvf pcre-8.13.tar.gz
mkdir /usr/local/pcre #创建安装目录
cd pcre-8.13
./configure --prefix=/usr/local/pcre #配置
make
make install
3、安装 nginx
cd /usr/local/src
tar zxvf tengine-1.2.0.tar
cd tengine
./configure --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_concat_module --with-openssl=/usr/ --with-pcre=/usr/local/src/pcre-8.13
注意:--with-pcre=/usr/local/src/pcre-8.13指向的是源码包解压的路径,而不是安装的路径,否则会报错
注意:如果要使用css/js等合并请求加载,请务必安装module --with-http_concat_module,其他模块可任意。
make
make install
4、启动nginx
/usr/local/nginx/sbin/nginx
chown nobody.nobody -R /usr/local/nginx/html
chmod 700 -R /usr/local/nginx/html
成功启动后,使用url访问可看到” Welcome to nginx!”,如:http://192.168.2.15/
5、关闭nginx使用kill
使用ps –ef 命令查找nginx的进程id,然后使:
kill 进程ID,即可关闭nginx
6、配置css\js 合并请求加载访问
cd /usr/local/nginx/conf
vi nginx.conf
在server配置中添加以下内容:
location /css/ {
# turn on concatenation # (default: off) concat on;
# max concat file number allowed # (default: 10) # concat_max_files 10;
# only files in the same content types are allowed # (default on) # concat_unique on;
# content types allowed # (default: application/x-javascript, text/css) # concat_types text/html;
}
/css/为需要使用的css/js合并加载目录,打开concat on;其他可不变,根据需要配置。
7、关闭nginx后重新启动nginx,测试合并加载:
url示例:
<link href="http://192.168.2.15/css/??demo1.css,demo2.css" type="text/css" rel="stylesheet" />
如果调用的样式能够显示说明配置成功,js可同样适用。
淘宝网现在已经将其服务器平台软件Tengine 开源,已提供下载。Tengine基于Nginx,针对大流量网站需求增加了很多功能特性和性能优化。以下沿引项目主页上的特性介绍:
继承Nginx-1.0.10的所有特性;
组合多个CSS、JavaScript文件的访问请求变成一个请求;
支持管道和syslog形式的日志和抽样;
自动根据CPU数目设置亲缘性;
监控系统的负载和资源占用从而对系统进行保护;
显示对运维人员更友好的出错信息,便于定位出错机器;
更强大的访问速度限制模块;
backtrace模块,程序崩溃的时候可以显示出错的调用栈
项目主页提供中英文界面,帮助文档仍在完善中。
开源通告:http://tengine.taobao.org/opensource_cn.html
安装编译Tengine:
1、下载软件包:
wget http://tengine.taobao.org/download/tengine-1.2.0.tar.gz
2、安装pcre,如果已经安装yum服务,请直接使用:yum install pcre,
否则请去官方下载安装如下:
cd /usr/local/src
tar zxvf pcre-8.13.tar.gz
mkdir /usr/local/pcre #创建安装目录
cd pcre-8.13
./configure --prefix=/usr/local/pcre #配置
make
make install
3、安装 nginx
cd /usr/local/src
tar zxvf tengine-1.2.0.tar
cd tengine
./configure --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_concat_module --with-openssl=/usr/ --with-pcre=/usr/local/src/pcre-8.13
注意:--with-pcre=/usr/local/src/pcre-8.13指向的是源码包解压的路径,而不是安装的路径,否则会报错
注意:如果要使用css/js等合并请求加载,请务必安装module --with-http_concat_module,其他模块可任意。
make
make install
4、启动nginx
/usr/local/nginx/sbin/nginx
chown nobody.nobody -R /usr/local/nginx/html
chmod 700 -R /usr/local/nginx/html
成功启动后,使用url访问可看到” Welcome to nginx!”,如:http://192.168.2.15/
5、关闭nginx使用kill
使用ps –ef 命令查找nginx的进程id,然后使:
kill 进程ID,即可关闭nginx
6、配置css\js 合并请求加载访问
cd /usr/local/nginx/conf
vi nginx.conf
在server配置中添加以下内容:
location /css/ {
# turn on concatenation # (default: off) concat on;
# max concat file number allowed # (default: 10) # concat_max_files 10;
# only files in the same content types are allowed # (default on) # concat_unique on;
# content types allowed # (default: application/x-javascript, text/css) # concat_types text/html;
}
/css/为需要使用的css/js合并加载目录,打开concat on;其他可不变,根据需要配置。
7、关闭nginx后重新启动nginx,测试合并加载:
url示例:
<link href="http://192.168.2.15/css/??demo1.css,demo2.css" type="text/css" rel="stylesheet" />
如果调用的样式能够显示说明配置成功,js可同样适用。
相关文章推荐
- Yii安装EClientScript插件扩展实现css,js文件代码压缩合并加载功能
- 用PageOffice编程实现Word文件生成合并
- Node.js实现JS文件合并小工具
- Struts2(十三):超链接实现动态加载国际化资源文件
- 利用PHP的debug_backtrace函数,实现PHP文件权限管理、动态加载
- SpringMVC实现velocity多Resourceloader通过文件、数据库等方式加载模版
- 上拉加载更多FJPullTableView文件的实现代码
- 自己实现Struts2(二)加载配置文件
- VB.Net实现文件合并的实例
- java 实现切割文件和合并文件的功能
- Unity3d制作Atlas 加载本地文件实现
- C#实现文本文件合并
- 用PageOffice编程实现Word文件生成合并
- nginx平滑升级、在线添加模块(tengine 动态加载模块)
- IO流的基本操作规律以及利用IO流实现音频文件的切割与合并
- 利用jQuery的deferred对象实现异步按顺序加载JS文件
- Nginx的静态文件合并请求,加快网站的加载速度
- K个有序链表共N个结点在O(NlgK)时间合并为一个新的有序链表实现文件C语言
- Yii --EClientScript 扩展,css,js文件代码压缩合并加载