戴兜

戴兜

Coding the world.
github
bilibili
twitter

你好,Tengine!

hellotengine.png

你好,Tengine!再见,Nginx!

写在前面#

戴兜的小屋在今年二月中旬时更換了機房,因為戴兜發現國內訪問 vultr 的洛杉磯機房要比東京機房快很多🧐。遷移完博客後突然想到了Tengine,之前因為懶沒有使用,這次有時間不妨折騰一下。

戴兜的伺服器為 Ubuntu 16.04 LTS,文中提到的命令,各位根據自己的伺服器做相應修改哦!

一、 折騰前的準備#

安裝必要的組件

apt install build-essential
apt install libpcre3-dev libpcre3  libssl-dev libssl1.0.0

https://github.com/jemalloc/jemalloc/releases 下載 jemalloc

tar jxvf jemalloc-5.1.0.tar.bz2
cd jemalloc-5.1.0
./configure
make
make install
pwd #獲取jemalloc的路徑

二、 獲取 Tengine 源碼#

直接前往 http://tengine.taobao.org 下載源碼,基於 nginx1.8.1。

如果你對 nginx 的版本有所要求(比如需要使用 Brotli),可以 clone https://github.com/alibaba/tengine 的 master 分支,那是基於 nginx1.15.1 的,但是仍在更新,不穩定。

三、 編譯 Tengine 源碼#

編譯是和 Nginx 一樣的,如果你需要什麼模塊,也要在編譯前配置好。

tar zxvf tengine-2.1.2.tar.gz
cd tengine-2.1.2
./configure --with-jemalloc=[jemalloc的路徑] --with-http_ssl_module --with-http_v2_module --with-http_gzip_static_module --with-http_stub_status_module --with-file-aio 
make
make install

現在,~~ 沖一杯卡布奇諾,~~ 靜靜等待。在所有工作結束後,你只需要將原來 Nginx 的配置拷貝到 Tengine,就大功告成啦!是不是很簡單!

四、 尾聲#

目前版本的 Tengine 不支持 HTTP2 的流式上傳,HTTP1.1 的流式上傳是正常的。可能導致博客無法上傳較大文件(使用 master 分支可以解決)

載入中......
此文章數據所有權由區塊鏈加密技術和智能合約保障僅歸創作者所有。