淘宝Web服务器Tengine在CentOS下的安装教程

注:服务器环境为CentOS

一、简介

Tengine是由淘宝网发起的Web服务器项目。它在Nginx的基础上,针对大访问量网站的需求,添加了很多高级功能和特性。Tengine的性能和稳定性已经在大型的网站如淘宝网,天猫商城等得到了很好的检验。它的最终目标是打造一个高效、稳定、安全、易用的Web平台。

从2011年12月开始,Tengine成为一个开源项目,Tengine团队在积极地开发和维护着它。Tengine团队的核心成员来自于淘宝、搜狗等互联网企业。Tengine是社区合作的成果,我们欢迎大家参与其中,贡献自己的力量。

二、特性

继承Nginx-1.2.9的所有特性,100%兼容Nginx的配置;

动态模块加载(DSO)支持。加入一个模块不再需要重新编译整个Tengine;

输入过滤器机制支持。通过使用这种机制Web应用防火墙的编写更为方便;

动态脚本语言Lua支持。扩展功能非常高效简单;

支持管道(pipe)和syslog(本地和远端)形式的日志以及日志抽样;

组合多个CSS、JavaScript文件的访问请求变成一个请求;

更加强大的负载均衡能力,包括一致性hash模块、会话保持模块,还可以对后端的服务器进行主动健康检查,根据服务器状态自动上线下线;

自动根据CPU数目设置进程个数和绑定CPU亲缘性;

监控系统的负载和资源占用从而对系统进行保护;

显示对运维人员更友好的出错信息,便于定位出错机器;

更强大的防攻击(访问速度限制)模块;

更方便的命令行参数,如列出编译的模块列表、支持的指令等;

可以根据访问文件类型设置过期时间;

三、安装

1.yum安装

yum安装比较简单,配置好源以后直接yum install即可。

①配置第三方yum源(CentOS的默认源里是没有nginx软件包的)

复制代码 代码如下:
yum install wget    #安装下载工具wget      

wget http://www.atomicorp.com/installers/atomic  #下载atomic yum源      

sh ./atomic   #安装      

yum check-update  #更新yum软件包

②安装配置

复制代码 代码如下:
yum install nginx      #安装nginx,根据提示,输入Y安装即可成功安装      

 service nginx start    #启动      

 chkconfig  nginx on    #设为开机启动      

 /etc/init.d/nginx  restart  #重启      

 rm -rf /usr/share/nginx/html/*  #删除ngin默认测试页

2.源码编译安装

源码安装稍微复杂一点,有一些相关的依赖包需要单独编译

源码安装既可以选择原版的nginx也可以使用淘宝修改过的Tengine,这里推荐使用Tengin,Tengine完全兼容nginx并且加入了许多的新特性,适合日益复杂的业务扩展。

Tengine官网:http://tengine.taobao.org/

①先安装pcre,用于支持nginx的伪静态

复制代码 代码如下:

# cd /usr/local/src

# wget ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-8.21.tar.gz

# tar zxvf pcre-8.21.tar.gz

# mkdir /usr/local/pcre   #创建安装目录

# cd pcre-8.21

# ./configure --prefix=/usr/local/pcre   #配置

# make

# make install

②安装Tengine

复制代码 代码如下:

# cd /usr/local/src

# wget http://tengine.taobao.org/download/tengine-1.4.2.tar.gz

# tar zxvf tengine-1.4.2.tar.gz

# cd tengine

# ./configure --prefix=/usr/local/nginx --with-http_stub_status_module --with-pcre=/usr/local/src/pcre-8.21

# make

# make install

# /usr/local/nginx/sbin/nginx   #启动nginx

# chown nobody.nobody -R /usr/local/nginx/html

# chmod 700 -R /usr/local/nginx/html

注意:--with-pcre=/usr/local/src/pcre-8.21指向的是源码包解压的路径,而不是安装的路径,否则会报错。

③设置Tengine开机启动

 

复制代码 代码如下:
# vi /etc/rc.d/init.d/nginx  #编辑启动文件添加下面内容

#!/bin/bash

# Tengine Startup script# processname: nginx

# pidfile: /var/run/nginx.pid

# config: /usr/local/nginx/conf/nginx.conf

nginxd=/usr/local/nginx/sbin/nginx

nginx_config=/usr/local/nginx/conf/nginx.conf

nginx_pid=/usr/local/nginx/logs/nginx.pid

RETVAL=0

prog="nginx"

# Source function library.

. /etc/rc.d/init.d/functions

# Source networking configuration.

. /etc/sysconfig/network

# Check that networking is up.

[ ${NETWORKING} = "no" ] && exit 0

[ -x $nginxd ] || exit 0

# Start nginx daemons functions.

start() {

if [ -e $nginx_pid ];then

echo "tengine already running...."

exit 1

fi

echo -n $"Starting $prog: "

daemon $nginxd -c ${nginx_config}

RETVAL=$?

echo

[ $RETVAL = 0 ] && touch /var/lock/subsys/nginx

return $RETVAL

}

# Stop nginx daemons functions.

stop() {

echo -n $"Stopping $prog: "

killproc $nginxd

RETVAL=$?

echo

[ $RETVAL = 0 ] && rm -f /var/lock/subsys/nginx /usr/local/nginx/logs/nginx.pid

}

reload() {

echo -n $"Reloading $prog: "

#kill -HUP `cat ${nginx_pid}`

killproc $nginxd -HUP

RETVAL=$?

echo

}

# See how we were called.

case "$1" in

start)

start

;;

stop)

stop

;;

reload)

reload

;;

restart)

stop

start

;;

status)

status $prog

RETVAL=$?

;;

*)

echo $"Usage: $prog {start|stop|restart|reload|status|help}"

exit 1

esac

exit $RETVAL

保存退出

复制代码 代码如下:

# chmod 775 /etc/rc.d/init.d/nginx   #赋予文件执行权限

# chkconfig nginx on   #设置开机启动

# /etc/rc.d/init.d/nginx restart 

至此,nginx安装结束。这里再说一下为什么要使用淘宝的Tengine:

1.继承Nginx的所有特性,100%兼容Nginx的配置;

2.动态模块加载(DSO)支持。加入一个模块不再需要重新编译整个Tengine;

3.输入过滤器机制支持。通过使用这种机制Web应用防火墙的编写更为方便;

4.动态脚本语言Lua支持。扩展功能非常高效简单;

5.支持管道(pipe)和syslog(本地和远端)形式的日志以及日志抽样;

6.组合多个CSS、JavaScript文件的访问请求变成一个请求;

四、成功页面

安装并启动Tengine后,浏览器输入ip地址,看到下图则说明安装成功。

五、注意事项

1. –with-openssl=/usr/local/src/openssl-1.0.1e 这步可能会出错,注意:–with-openssl=/usr/local/src/openssl-1.0.1e 指向的是源码包解压的路径,而不是安装的路径,否则会报错,下载,解压源码包,如下:

复制代码 代码如下:

cd /usr/local/src

wget http://www.openssl.org/source/openssl-1.0.1e.tar.gz

tar zxvf openssl-1.0.1e

然后再重新执行 tengine 安装即可。

2. –with-pcre=/usr/local/src/pcre-8.33 指向的是源码包解压的路径,而不是安装的路径,否则会报错。

以上是 淘宝Web服务器Tengine在CentOS下的安装教程 的全部内容, 来源链接: utcz.com/a/252234.html

回到顶部