Setting
主要設定檔位置: /etc/nginx/nginx.conf
引入設定檔路徑: include /etc/nginx/conf.d/*.conf
伺服器設定檔: /etc/nginx/conf.d/default.conf
nginx.conf 設定檔內容
設定說明:
nginx 為使用者名稱
需要開啟的 worker 數量,盡量以核心數為設定標準
綁定每個 worker process 給 CPU 核心
要和系统單一 process 的 open file 數量一致
Note
The Linux kernel has a hard upper limit of 1024*1024
錯誤紀錄檔 參考
Pid文件位置
event 區塊
epoll 是 I/O Multiplexing 中的一種方式, 用於linux kernel 2.6以上,可提高nginx的效能
每個 worker 的大連接數,理論上每台 nginx 伺服器的最大連接數為 worker_processes * worker_connections
http 區塊
設定MIME, 由mime.type 檔案來定義
設定預設的MIME类型
設定紀錄檔的格式
設定 access 紀錄檔
開啟 sendfile(), 指定Nginx 使用 kernel 的 sendfile 函數來提高 web 傳輸文件的效率,一般設為 on,如果用來進行下載等應用 磁碟IO 重負載的應用,可設為 off,以平衡磁碟與網路 I/O 處理速度,降低系統的負載。 P.S.如果圖片顯示不正常把這個改成off
開啟 TcpNopush(TCP_CORK), 採用 Nagle 算法較小的 packet 存入緩衝區直到蓄足一個 frame 後一起發送,這樣可以最小化所發送的 message 的數量來提高應用程序的效率,用以縮減網路傳輸過程中的封包數量,並減輕網絡擁塞問題。 可參考 TcpNopush
第一個參數指定 Client 端連接保持活動的限制時間,在這個時間之後,Server 會關掉連接,第二個參數是可選的,它指定了消息頭保持活動的有效時間,即響應中的 timeout=time,它可以告訴某些瀏覽器關閉連接,因此服務器就不必關閉連接了,如果沒有這個參數,Nginx不會發送Keep-Alive頭。
開啟gzip壓縮 參考資料: GzipModule
讀取來自於 /etc/nginx/conf.d 資料夾的 config 檔案, 預設的 Server 設定在 conf.d/default.conf
開啟負載平衡, weight 是用來設定 server 分配權重

