[Web server] Hướng dẫn setup Tengine trên Ubuntu

Tengine là một phần mềm mã nguồn mở máy chủ được phát triển bởi taobao.com nhằm đáp ứng các yêu cầu nghiêm ngặt về hệ thống máy chủ web, họ đã tích hợp hàng trăm module vào mã nguồn máy chủ nginx để đảm bảo hiệu suất cao, tiết kiệm tài nguyên và sự linh hoạt.
Về cơ bản, Tengine có thể được xem như là một Nginx hoàn hảo, hoặc là một super Nginx.
Bài viết này sẽ hướng dẫn các bạn install tengine trên Ubuntu server

1. Cài đặt
B1. Tải phiên bản Tengine mới nhất tại đây:
http://tengine.taobao.org/download.html
B2. Cài đặt các thư viện cần thiết
sudo apt-get install unzip gcc build-essential
sudo apt-get install libpcre3 libpcre3-dev
sudo apt-get install zlib1g-dev
sudo apt-get install openssl libssl-dev
B3. Giải nén và cài đặt từ source code.
sudo ./configure
sudo make
sudo make install
B4. Khởi động Tengine
Mặc định, Tengine được cài đặt tại thư mục /usr/local/nginx.
sudo /usr/local/nginx/sbin/nginx
B5. Xem version
sudo /usr/local/nginx/sbin/nginx -v
Tengine version: Tengine/1.5.1 (nginx/1.2.9)

2. Thiết lập virtualhost:
Về mặt cấu trúc, các thiết lập virtualhost trong Tengine giống với Nginx.
B1. Để dễ hình dung, chúng ta tạo 2 folder sites-available và sites-enabled
sudo mkdir /usr/local/nginx/sites-available
sudo mkdir /usr/local/nginx/sites-enabled
Các file virtualhost cứng sẽ được lưu trữ trong thư mục sites-available, các link mềm sẽ nằm trong thư mục sites-enabled.
B2. Thay thế file nginx.conf bởi file mẫu nginx.conf.default trong thư mục conf
sudo cp nginx.conf.default nginx.conf
B3. Thêm dòng sau vào file nginx.conf (thêm trong tag http {} )
include /usr/local/nginx/sites-enabled/*;
B4. Tạo file virtualhost
sudo nano /usr/local/nginx/sites-available/example1
Nội dung:
server {
listen 80;
server_name liferay.qgs.vn;
root /usr/share/nginx/www;
index index.html index.htm;
location / {
proxy_pass http://127.0.0.1:8080/;
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_max_temp_file_size 0;
client_max_body_size 10m;
client_body_buffer_size 128k;
proxy_connect_timeout 90;
proxy_send_timeout 90;
proxy_read_timeout 90;
proxy_buffer_size 4k;
proxy_buffers 4 32k;
proxy_busy_buffers_size 64k;
proxy_temp_file_write_size 64k;
}
}
B5. Tạo softlink trong sites-enabled:
ln -s /usr/local/nginx/sites-available/example1 usr/local/nginx/sites-enabled/example1
B6. Restart Tengine
sudo /usr/local/nginx/sbin/nginx -s stop
sudo /usr/local/nginx/sbin/nginx
B7. Tham khảo tập lệnh
sudo /usr/local/nginx/sbin/nginx -h