[root@localhost tengine-2.1.0]# yum update -y
[root@localhost tengine-2.1.0]# yum install gcc gcc-c++ autoconf automake -y


安装需要的组件

PCRE(Perl Compatible Regular Expressions)是一个Perl库,包括 perl 兼容的正则表达式库。nginx rewrite依赖于PCRE库,所以在安装Tengine前一定要先安装PCRE,最新版本的PCRE可在官网(​http://www.pcre.org/)获取。具体安装流程为:

[root@ok software]# wget ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-8.38.tar.gz
[root@localhost pcre-8.38]# ./configure --prefix=/usr/local/pcre
[root@localhost pcre-8.38]# make && make install


OpenSSL 是一个强大的安全套接字层密码库,囊括主要的密码​​算法​​​、常用的密钥和证书封装管理功能及SSL协议,并提供丰富的应用程序供测试或其它目的使用。,安装OpenSSL(​​http://www.openssl.org/source/​​)主要是为了让tengine支持Https的访问请求。具体是否安装看需求。

[root@localhost openssl-1.0.2j]# ./config --prefix=/usr/local/openssl
[root@localhost openssl-1.0.2j]# make && make install


Zlib是提供资料压缩之用的函式库,当Tengine想启用GZIP压缩的时候就需要使用到Zlib(​​http://www.zlib.net/​​)

[root@localhost zlib-1.2.8]# ./configure --prefix=/usr/local/zlib
[root@localhost zlib-1.2.8]# make && make install


jemalloc(​​http://www.canonware.com/jemalloc/​​)是一个更好的内存管理工具,使用jemalloc可以更好的优化Tengine的内存管理

[root@localhost jemalloc-3.6.0]# ./configure --prefix=/usr/local/jemalloc
[root@localhost jemalloc-3.6.0]# make && make install


安装Tengine

 ​添加一个专门的用户来执行Tengine,不建议用root

[root@localhost jemalloc-3.6.0]# groupadd www
[root@localhost jemalloc-3.6.0]# useradd -s /sbin/nologin -g www www
[root@localhost tengine-2.1.0]# ./configure --prefix=/apps/tengine-2.1.0 \
> --user=www \
> --group=www \
> --with-pcre=/usr/local/pcre \
> --with-openssl=/usr/local/openssl \
> --with-jemalloc=/usr/local/jemalloc \
> --with-http_realip_module \
> --with-http_stub_status_module \
> --with-http_concat_module \
> --with-zlib=/usr/local/zlib


注意配置的时候 –with-pcre 、–with-openssl、–with-jemalloc、–with-zlib的路径为源文件的路径(上面是指定的安装路径所以报错)下面改过来,编译成功!后 # make && make install

[root@localhost tengine-2.1.0]# ./configure --prefix=/apps/tengine-2.1.0  --user=www  --group=www  --with-pcre=/usr/local/src/pcre-8.38  --with-openssl=/usr/local/src/openssl-1.0.2j  --with-jemalloc=/usr/local/src/jemalloc-3.6.0  --with-http_realip_module  --with-http_stub_status_module  --with-http_concat_module  --with-zlib=/usr/local/src/zlib-1.2.8
[root@localhost apps]# cd tengine-2.1.0/
[root@localhost tengine-2.1.0]# ls
conf html include logs modules sbin
[root@localhost tengine-2.1.0]# cd sbin/
[root@localhost sbin]# ls
dso_tool nginx
[root@localhost sbin]# ./nginx
[root@localhost sbin]# pgrep nginx
9632
9633
[root@localhost sbin]# netstat -lnutp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 9632/nginx
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 1959/sshd
tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN 2818/master
tcp 0 0 :::22 :::* LISTEN 1959/sshd
tcp 0 0 ::1:25 :::* LISTEN 2818/master
udp 0 0 0.0.0.0:68 0.0.0.0:* 1737/dhclient




网名:bass 分享技术 突破难点 创新思维