what is Nginx
Nginx (“engine x”) 是一個高效能的 HTTP 和 反向代理 伺服器,也是一個 IMAP/POP3/SMTP 代理伺服器。 Nginx 是由 Igor Sysoev 為俄羅斯訪問量第二的 Rambler.ru 站點開發的,第一個公開版本0.1.0釋出於2004年10月4日。其將原始碼以類BSD許可證的形式釋出,因它的穩定性、豐富的功能集、示例配置檔案和低系統資源的消耗而聞名。2011年6月1日,nginx 1.0.4釋出。
安裝環境:
Centos-6.3 x64
安裝方式:
原始碼編譯安裝
安裝位置:
/usr/local/nginx
下載nginx:
nginx-1.6.1.tar.gz
Install
安裝依賴:
yum -y install gcc-c++
yum -y install zlib zlib-devel openssl openssl-devel pcre pcre-devel
下載安裝包編譯:
cd /usr/local
wget http://nginx.org/download/nginx-1.6.1.tar.gz
tar zxvf nginx-1.6.1.tar.gz
mv nginx-1.6.1 nginx
cd /usr/local/nginx
./configure --prefix=/usr/local/nginx
make
make install
nginx.conf 配置檔案的一些說明
#執行使用者
user nginx;
#啟動程式,通常設定成和cpu的數量相等
worker_processes 1;
#全域性錯誤日誌及PID檔案
error_log /var/log/nginx/error.log warn;
pid /var/run/nginx.pid;
events {
#單個後臺worker process程式的最大併發連結數
worker_connections 1024;
}
#設定http伺服器
http {
#設定mime型別,型別由mime.type檔案定義
include /etc/nginx/mime.types;
default_type application/octet-stream;
#設定日誌格式
log_format main `$remote_addr - $remote_user [$time_local] "$request" `
`$status $body_bytes_sent "$http_referer" `
`"$http_user_agent" "$http_x_forwarded_for"`;
access_log /var/log/nginx/access.log main;
#sendfile 指令指定 nginx 是否呼叫 sendfile 函式(zero copy 方式)來輸出檔案,對於普通應用,
#必須設為 on,如果用來進行下載等應用磁碟IO重負載應用,可設定為 off,以平衡磁碟與網路I/O處理速度,降低系統的uptime.
sendfile on;
#tcp_nopush on;
#連線超時時間
keepalive_timeout 65;
#開啟gzip壓縮
gzip on;
#包含的配置檔案
include /etc/nginx/conf.d/*.conf;
}