文档章节

centos6安装tengine

chaun
 chaun
发布于 2016/05/18 14:59
字数 1175
阅读 44
收藏 3

1、安装必要的编译环境好
由于Tengine安装需要使用源代码自行编译,所以在安装前需要安装必要的编译工具:

# yum update
# yum install gcc gcc-c++ autoconf automake

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

# cd /usr/local/src
# wget http://ncu.dl.sourceforge.net/project/pcre/pcre/8.38/pcre-8.38.tar.gz
# tar zxvf pcre-8.38.tar.gz
# cd pcre-8.38
# ./configure --prefix=/usr/local/pcre
# make && make install

附加信息:
源码的安装一般由3个步骤组成:配置(configure)、编译(make)、安装(make install)。
Configure是一个可执行脚本,它有很多选项,在待安装的源码路径下使用命令./configure –help输出详细的选项列表。其中–prefix选项是配置安装的路径,如果不配置该选项,安装后可执行文件默认放在/usr /local/bin,库文件默认放在/usr/local/lib,配置文件默认放在/usr/local/etc,其它的资源文件放在/usr /local/share,比较凌乱。
如果配置–prefix,如:./configure –prefix=/usr/local/test,可以把所有资源文件放在/usr/local/test的路径中,不会杂乱。
用了—prefix选项的另一个好处是卸载软件或移植软件。当某个安装的软件不再需要时,只须简单的删除该安装目录,就可以把软件卸载得干干净净;移植软件只需拷贝整个目录到另外一个机器即可(相同的操作系统)。当然要卸载程序,也可以在原来的make目录下用一次make uninstall,但前提是make文件指定过uninstall。
B、OpenSSL
OpenSSL 是一个强大的安全套接字层密码库,囊括主要的密码算法、常用的密钥和证书封装管理功能及SSL协议,并提供丰富的应用程序供测试或其它目的使用。,安装OpenSSL(http://www.openssl.org/source/)主要是为了让tengine支持Https的访问请求。具体是否安装看需求。

# cd /usr/local/src
# wget http://www.openssl.org/source/openssl-1.0.2.tar.gz
# tar zxvf openssl-1.0.2.tar.gz
# cd openssl-1.0.2
# ./Configure --prefix=/usr/local/openssl
# make && make install

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

# cd /usr/local/src
# wget http://zlib.net/zlib-1.2.8.tar.gz
# tar zxvf zlib-1.2.8.tar.gz
# cd zlib-1.2.8
# ./configure --prefix=/usr/local/zlib
# make && make install

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

# cd /usr/local/src
# wget http://www.canonware.com/download/jemalloc/jemalloc-3.6.0.tar.bz2
# tar jxvf jemalloc-3.6.0.tar.bz2
# cd jemalloc-3.6.0
# ./configure --prefix=/usr/local/jemalloc
# make && make install

3、安装Tengine
在主要核心的组件安装完毕以后就可以安装Tegine了,最新版本的Tegine可从官网(http://tengine.taobao.org/)获取。
在编译安装前还需要做的一件事是添加一个专门的用户来执行Tengine。当然你也可以用root(不建议)。

# groupadd www-data
# useradd -s /sbin/nologin -g www-data www-data

接下来才是进行安装:

# cd /usr/local/src
# wget http://tengine.taobao.org/download/tengine-2.1.2.tar.gz
# tar -zxvf tengine-2.1.2.tar.gz
# cd tengine-2.1.2
# ./configure --prefix=/usr/local/nginx \
--user=www-data \
--group=www-data \
--with-pcre=/usr/local/src/pcre-8.38 \
--with-openssl=/usr/local/src/openssl-1.0.2 \
--with-jemalloc=/usr/local/src/jemalloc-3.6.0 \
--with-http_gzip_static_module \
--with-http_realip_module \
--with-http_stub_status_module \
--with-http_concat_module \
--with-zlib=/usr/local/src/zlib-1.2.8
# make && make install

注意配置的时候 –with-pcre 、–with-openssl、–with-jemalloc、–with-zlib的路径为源文件的路径。
4、配置Tengine,设置tengine自动启动

#vim /etc/rc.d/init.d/nginx 
#编辑启动文件添加下面内容
#!/bin/bash
# nginx Startup script for the Nginx HTTP Server
# it is v.0.0.2 version.
# chkconfig: - 85 15
# description: Nginx is a high-performance web and proxy server.
# It has a lot of features, but it's not for everyone.
# 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 "nginx 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 #设置开机启动
service nginx restart #启动服务

浏览器中输入地址访问如下

参考:

http://tengine.taobao.org/document_cn/install_cn.html

http://blog.csdn.net/shirdrn/article/details/9731215 

© 著作权归作者所有

chaun
粉丝 93
博文 269
码字总数 91059
作品 0
深圳
高级程序员
私信 提问
ltnmp 3.0 发布,PHP 开发环境一键安装包

ltnmp3.0发布,推荐更新。 ltnmp3.0主要更新如下: 各组件更新至最新版,tengine-2.1.2,php-7.0.2,mariadb-10.1.10,phpMyAdmin-4.5.3.1-all-languages,nginx-1.9.9,mysql-5.7.10,redis...

技安
2016/01/20
5.8K
39
centos6打包tengine rpm

一、准备基本环境 安装打包软件及tengine编译所需依赖 yum -y install rpm-build wget make m4 gcc-c++ autoconf automake lua-devel pcre-devel libxml2-devel gd-devel perl-ExtUtils-Embe......

Firxiao
2016/03/29
86
0
lamp环境搭建 --lnmp环境搭建_无需整理

需求分析 只需要测试lamp环境运行 目标 快速安装lamp环境 phpstudy一键按装 phpStudy for Linux 支持Apache/Nginx/Tengine/Lighttpd, 支持php5.2/5.3/5.4/5.5切换 已经在centos-6.5,debian...

辣条拌鱼翅
2015/08/15
0
0
Centos6安装Tengine+Lua

添加epel源 rpm -ivh yum install readline readline-devel zlib zlib-devel 下面安装 lua # wget http://www.lua.org/ftp/lua-5.3.0.tar.gz tar xvf lua-5.3.0.tar.gz cd lua-5.3.0/ make l......

转身撞墙角
2017/09/30
0
0
OneinStack 1.7 发布,一键 PHP/JAVA 安装工具

OneinStack 1.7 发布了,这个脚本是使用 shell编写,为了快速在生产环境上部署lnmp/lamp/lnmpa/lnmt(Linux、Nginx/Tengine/OpenResty、 MySQL/MariaDB/Percona/MongoDB/PostgreSQL、PHP、A...

lj2007331
2018/04/25
1K
7

没有更多内容

加载失败,请刷新页面

加载更多

idea下springboot 项目在static目录下添加文件不生效

idea下springboot 项目在static目录下添加文件不生效 问题描述 是这样子的,我的项目目录结构如下: 我在static目录下,创建了index.html和aaaa.jpg这两个文件。然后,启动服务访问 http://l...

wotrd
昨天
4
0
k8s1.14 一、环境

1. 4台虚拟机 (CentOS Linux release 7.2.1511 (Core) ) 192.168.130.211 master 192.168.130.212 node1 192.168.130.213 node2 192.168.130.214 node3 2. 设置服务器hostname 2.1 设置本机......

ThomasCheng
昨天
3
0
盖茨:如果我现在开创一家公司 将会专注于AI

新浪科技讯,北京时间 6 月 26 日凌晨消息,微软联合创始人比尔·盖茨(Bill Gates)在周一接受采访时表示,如果他今天从哈佛大学辍学并开创一家新公司,那么这家公司将会专注于人工智能(A...

linuxCool
昨天
1
0
聊聊feign的Retryer

序 本文主要研究一下feign的Retryer Retryer feign-core-10.2.3-sources.jar!/feign/Retryer.java public interface Retryer extends Cloneable { /** * if retry is permitted, retur......

go4it
昨天
9
0
HyperLogLog简介

  (1)HyperLogLog简介      在Redis 在 2.8.9 版本才添加了 HyperLogLog,HyperLogLog算法是用于基数统计的算法,每个 HyperLogLog 键只需要花费 12 KB 内存,就可以计算接近 2^64 个...

SEOwhywhy
昨天
1
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部