淘寶Web伺服器Tengine在CentOS下的安裝教程_nginx

來源:互聯網
上載者:User

註:伺服器環境為CentOS

一、簡介

Tengine是由淘寶網發起的Web伺服器項目。它在Nginx的基礎上,針對大訪問量網站的需求,添加了很多進階功能和特性。Tengine的效能和穩定性已經在大型的網站如淘寶網,天貓商城等得到了很好的檢驗。它的最終目標是打造一個高效、穩定、安全、易用的Web平台。

從2011年12月開始,Tengine成為一個開源項目,Tengine團隊在積極地開發和維護著它。Tengine團隊的核心成員來自於淘寶、搜狗等互連網企業。Tengine是社區合作的成果,我們歡迎大家參與其中,貢獻自己的力量。

二、特性

繼承Nginx-1.2.9的所有特性,100%相容Nginx的配置;
動態模組載入(DSO)支援。加入一個模組不再需要重新編譯整個Tengine;
輸入過濾器機制支援。通過使用這種機制Web Application Firewall的編寫更為方便;
動態指令碼語言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 Application Firewall的編寫更為方便;
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 指向的是源碼包解壓的路徑,而不是安裝的路徑,否則會報錯。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.