[root@localhost tengine-2.1.]# yum update -y
[root@localhost tengine-2.1.]# 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.]# ./configure --prefix=/usr/local/zlib
[root@localhost zlib-1.2.]# make && make install

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

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

安装Tengine

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

[root@localhost jemalloc-3.6.]# groupadd www
[root@localhost jemalloc-3.6.]# useradd -s /sbin/nologin -g www www
[root@localhost tengine-2.1.]# ./configure --prefix=/apps/tengine-2.1. \
> --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.]# ./configure --prefix=/apps/tengine-2.1.  --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.  --with-http_realip_module  --with-http_stub_status_module  --with-http_concat_module  --with-zlib=/usr/local/src/zlib-1.2.
[root@localhost apps]# cd tengine-2.1./
[root@localhost tengine-2.1.]# ls
conf html include logs modules sbin
[root@localhost tengine-2.1.]# cd sbin/
[root@localhost sbin]# ls
dso_tool nginx
[root@localhost sbin]# ./nginx
[root@localhost sbin]# pgrep nginx [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.0.0:* LISTEN /nginx
tcp 0.0.0.0: 0.0.0.0:* LISTEN /sshd
tcp 127.0.0.1: 0.0.0.0:* LISTEN /master
tcp ::: :::* LISTEN /sshd
tcp ::: :::* LISTEN /master
udp 0.0.0.0: 0.0.0.0:* /dhclient

tengine-2.1.0 源码安装的更多相关文章

  1. mono-3.4.0 源码安装时出现的问题 [do-install] Error 2 [install-pcl-targets] Error 1 解决方法

    Mono 3.4修复了很多bug,继续加强稳定性和性能(其实Mono 3.2.8 已经很稳定,性能也很好了),但是从http://download.mono-project.com/sources/m ...

  2. zabbix--4.0源码安装

    Zabbix4.0 源码编译安装 ps:其实相对 zabbix 来说,直接按照官网 yum 安装还是要方便点,我这里已经有 lnmp 的环境了,就想自己编译安装试下. 官网yum安装中文文档:http ...

  3. snort-2.9.7.0源码安装过程

    2015/02/15,centos6.5-64-minimal,初始205个包 [root@localhost snort]# yum install wget[root@localhost snor ...

  4. ubuntu vim8.0源码安装

    安装篇 从https://github.com/vim/vim下载相应zip源码文件,利用unzip vim-master.zip 命令解压到当前用户目录,即~: 解压后进入vim的src目录,首先, ...

  5. Zabbix3.0源码安装

    环境:nginx1.6.3 php-5.6.22 mysql-5.5.49 请参考前面的博文自行搭建 安装依赖并创建用户 [root@test88 ~]# yum install -y libxml2 ...

  6. Ubuntu16 编译源码安装MXNet 可变卷积Deformable-ConvNets GPU版

    [引言]最近接手了公司的关于虫子识别的项目,使用MXNet框架开发,但是实际用的是Deformable-ConvNets. Deformable-ConvNets为微软研究研究院提出的可变卷积网络,可 ...

  7. LLVM源码安装教程

    LLVM4.0源码安装教程 环境:ubuntu16.04 llvm-4.0 clang-4.0 步骤: 1.依赖库安装,注意llvm的编译对gcc版本和cmake版本有要求,请根据版本进行匹配 $ s ...

  8. CentOS 6.5 + Nginx 1.8.0 + PHP 5.6(with PHP-FPM) 负载均衡源码安装 之 (一)Nginx安装篇

    CentOS 6.5 minimal安装不再赘述 Nginx源码安装 1.安装wget下载程序 yum -y install wget 2.安装编译环境:gcc gcc-c++ automake au ...

  9. CentOS下源码安装vsftpd-3.0.0,并设置指定用户访问指定目录(附带完整配置文件)

    1.卸载系统已经存在的ftp服务器 因为是源码安装,所以不能通过rpm -qa的方式查看是否已经安装ftp服务器,可以通过find / | grep vsftp*方式查看系统中存在哪些与vsftpd相 ...

随机推荐

  1. PO、VO、DAO、BO、POJO

    一.PO :(persistant object ),持久对象 可以看成是与数据库中的表相映射的java对象.使用Hibernate来生成PO是不错的选择.二.VO :(value object) , ...

  2. BZOJ 1461: 字符串的匹配

    Description 同上题. Sol KMP+树状数组. 写这题的时候我灰常naive...不管了...直接贴代码... Code /******************************* ...

  3. ubuntu 13.10 skype登不上问题

    首先打开sources.list sudo gedit /etc/apt/sources.list 如果是13.10添加源: deb http://archive.canonical.com/ubun ...

  4. 转:shell杀死指定名称的进程

    #!/bin/sh #根据进程名杀死进程 ] then echo "缺少参数:procedure_name" exit fi PROCESS=`|grep -v grep|grep ...

  5. 【GoLang】GoLang 中 make 与 new的区别

    make.new操作 make用于内建类型(map.slice 和channel)的内存分配.new用于各种类型的内存分配. 内建函数new本质上说跟其它语言中的同名函数功能一样:new(T)分配了零 ...

  6. SQL Server常用命令

    1.DECLARE DECLARE命令用于声明一个或多个局部变量.游标变量或表变量. 注:如果定义的变量是字符型,应该指定data_type表达式中其最大长度,否则系统认为其长度为1. declare ...

  7. linux shell脚本通过参数名传递参数值

    平常在写shell脚本都是用$1,$2....这种方式来接收参数,然而这种接收参数的方式不但容易忘记且不易于理解和维护.Linux常用的命令都可指定参数名和参数值,然而我们怎样才能给自己的shell脚 ...

  8. ios 中NSDateFormater中的特殊字符

    今天要把一个字符串转化为日期格式,这个字符串是服务器传过来的,如下: 2015-02-28T14:40:15 我开始使用这个格式来转化  yyyy-MM-ddThh:mm:ss ,一直返回nil,原来 ...

  9. mysql查询当前正在使用数据库

    1.select database(): 2.status: 3.show tables:

  10. google 语音api

    mdeia.Source = new Uri("http://translate.google.cn/translate_tts?ie=UTF-8&q=你好&tl=zh-CN ...