編譯安裝 Centos 7 x64 + tengine.2.0.3 (實測+筆記)

環境:

系統硬件:vmware vsphere (CPU:2*4核,內存2G)

系統版本:CentOS Linux release 7.0.1406

 

安裝步驟:

 

1.系統環境

1.1 更新系統

[root@centos ~]# yum update -y

 

1.2 查看環境

[root@centos ~]# cat /etc/redhat-release

CentOS Linux release 7.0.1406 (Core)

[root@centos ~]# uname -a

Linux tengine 3.10.0-123.4.2.el7.x86_64 #1 SMP Mon Jun 30 16:09:14 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux

 

 

2.安裝tengine

2.1.準備安裝

[root@centos ~]# cd /usr/local/src/

下載 pcre-8.35.tar.gz到/usr/local/src

[root@centos ~]# wget ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-8.35.tar.gz

下載zlib-1.2.8.tar.gz到/usr/local/src

[root@centos ~]# wget http://zlib.net/zlib-1.2.8.tar.gz

下載 openssl-1.0.1h.tar.gz到/usr/local/src

[root@centos ~]# wget http://www.openssl.org/source/openssl-1.0.1h.tar.gz

下載jemalloc-3.6.0.tar.bz2到/usr/local/src

[root@centos ~]#  wget http://www.canonware.com/download/jemalloc/jemalloc-3.6.0.tar.bz2

下載 tengine-2.0.3.tar.gz到/usr/local/src

[root@centos ~]# wget http://tengine.taobao.org/download/tengine-2.0.3.tar.gz

  

2.2 更新包

[root@centos ~]# yum install zlib-devel openssl-devel -y

 

2.3 安裝Pcre

[root@centos ~]# cd /usr/local/src/

[root@centos ~]# tar zvxf pcre-8.35.tar.gz

[root@centos ~]# cd pcre-8.35

[root@centos ~]# ./configure

[root@centos ~]# make && make install

 

2.4 安裝openssl

[root@centos ~]# cd /usr/local/src/

[root@centos ~]# tar zvxf openssl-1.0.1h.tar.gz

[root@centos ~]# cd openssl-1.0.1h

[root@centos ~]# ./config

[root@centos ~]# make && make install

 

2.5 安裝zlib

[root@centos ~]# cd /usr/local/src/

[root@centos ~]# tar zlib-1.2.8.tar.gz

[root@centos ~]# cd zlib-1.2.8

[root@centos ~]# ./configure

[root@centos ~]# make && make install

 

2.6 安裝jemalloc

[root@centos ~]# cd /usr/local/src/

[root@centos ~]# tar zvxf jemalloc-3.6.0

[root@centos ~]# cd jemalloc-3.6.0

[root@centos ~]# ./configure

[root@centos ~]# make && make install

[root@centos ~]# echo ‘/usr/local/lib‘ > /etc/ld.so.conf.d/local.conf

[root@centos ~]# ldconfig

 

4.4 創建www用戶和組,創建www虛擬主機使用的目錄,以及Nginx使用的日誌目錄,並且賦予他們適當的權限

[root@centos ~]# groupadd www

[root@centos ~]# useradd -g www www

[root@centos ~]# mkdir -p /data/www

[root@centos ~]# chmod +w /data/www

[root@centos ~]# chown -R www:www /data/www

 

4.5 安裝tengine

[root@centos ~]# cd /usr/local/src/

[root@centos ~]# tar zvxf tengine-2.0.3.tar.gz

 

僞裝服務器信息(可以不修改)

[root@centos ~]# cd nginx-1.6.0/src/core

[root@centos ~]# vim ./src/core/nginx.h

修改NGINX_VERSION爲你希望顯示的版號

修改NGINX_VER爲你希望顯示的名稱

修改NGINX_VAR 爲你希望顯示的名稱

保存

  

開始安裝NGINX

./configure --prefix=/opt/nginx --user=www --group=www --with-http_stub_status_module --with-http_ssl_module --with-http_gzip_static_module --with-openssl=/usr/local/src/openssl-1.0.1h --with-zlib=/usr/local/src/zlib-1.2.8 --with-pcre=/usr/local/src/pcre-8.35 --with-jemalloc

[root@centos ~]# make && make install

 

4.6 修改 nginx.conf 

[root@centos ~]# vim /opt/nginx/conf/nginx.conf

修改前面幾行爲:

user www www;
worker_processes 4;
error_log logs/error.log crit;
pid logs/nginx.pid;
events{
  use epoll;
  worker_connections 65535;
}

 

4.7 測試和運行

[root@centos ~]# cd /opt/nginx

[root@centos ~]# ldconfig

[root@centos ~]# ./sbin/nginx -t

如果顯示下面信息,即表示配置沒問題

nginx: the configuration file /opt/nginx/conf/nginx.conf syntax is ok
nginx: configuration file /opt/nginx/conf/nginx.conf test is successful

 

輸入代碼運行nginx服務

[root@centos ~]# ./sbin/nginx 

[root@centos ~]# ps au|grep nginx

如果顯以類似下面的信息,即表示nginx已經啓動

root 2013 0.0 0.0 103156 856 pts/0 S+ 03:22 0:00 grep nginx

  

輸入代碼檢測是否支持加速

查看是否生效

[root@centos ~]# lsof -n | grep jemalloc

ginx 2346 root mem REG 253,1 1824470 51571788 /usr/local/lib/libjemalloc.so.1
nginx 2347 www mem REG 253,1 1824470 51571788 /usr/local/lib/libjemalloc.so.1
nginx 2348 www mem REG 253,1 1824470 51571788 /usr/local/lib/libjemalloc.so.1
nginx 2349 www mem REG 253,1 1824470 51571788 /usr/local/lib/libjemalloc.so.1
nginx 2350 www mem REG 253,1 1824470 51571788 /usr/local/lib/libjemalloc.so.1

 

[root@centos ~]# curl http://localhost

 

4.8 打開防火牆80端口

#停止firewall 

[root@centos ~]# systemctl stop firewalld.service 

#禁止firewall開機啓動

[root@centos ~]# systemctl disable firewalld.service

安裝 iptables

[root@centos ~]# yum install iptables-services 

設置防火牆規則 (增加80端口)

[root@centos ~]# vim /etc/sysconfig/iptables

打開文件,增加80端口那一行

*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -p icmp -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 22 -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 80 -j ACCEPT
-A INPUT -j REJECT --reject-with icmp-host-prohibited
-A FORWARD -j REJECT --reject-with icmp-host-prohibited
COMMIT

 

:wq #保存退出

 

#重啓防火牆使配置生效

[root@centos ~]# systemctl restart iptables.service

#設置防火牆開機啓動

[root@centos ~]# systemctl enable iptables.service 

 

 4.9 作爲服務,開機後啓動

[root@centos ~]# vim /usr/lib/systemd/system/tengine.service

增加以下內容

[Unit]
Description=The nginx HTTP and reverse proxy server
After=syslog.target network.target remote-fs.target nss-lookup.target

[Service]
Type=forking
PIDFile=/opt/nginx/logs/nginx.pid
ExecStartPre=/opt/nginx/sbin/nginx -t
ExecStart=/opt/nginx/sbin/nginx
ExecReload=/bin/kill -s HUP $MAINPID
ExecStop=/bin/kill -s QUIT $MAINPID
PrivateTmp=true

[Install]
WantedBy=multi-user.target

 

:wq 保存退出

 

 [root@centos ~]# systemctl stop tengine

 [root@centos ~]# systemctl start tengine

 [root@centos ~]# systemctl reload tengine

 [root@centos ~]# systemctl enable tengine

 [root@centos ~]# shutdown -r now

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章