本文列出了nginx默認配置文件 nginx.conf手大部分命令,并加以中文注釋說明,實際配置中可能沒有這么復雜,這里只能作為一個參考閱讀文檔!
一、nginx基本配置
代碼如下:
#定義Nginx運行的用戶和用戶組,系統中必須有此用戶,可以是nologin
user www www;
#啟動進程,通常設置成和cpu的數量相等
worker_processes 1;
#全局錯誤日志及PID文件
error_log /var/log/nginx/error.log; #錯誤日志定義等級,[ debug | info | notice | warn | error | crit ]
pid /var/run/nginx.pid;
#一個nginx進程打開的最多文件描述符數目,理論值應該是最多打開文件數(系統的值ulimit -n)與nginx進程數相除,但是nginx分配請求并不均勻,所以建議與ulimit -n的值保持一致。
worker_rlimit_nofile 65535;
#工作模式及連接數上限
events {
use epoll; #epoll是多路復用IO(I/O Multiplexing)中的一種方式,但是僅用于linux2.6以上內核,可以大大提高nginx的性能
worker_connections 1024;#單個后臺worker process進程的最大并發鏈接數 (最大連接數=連接數*進程數)
# multi_accept on;
}
#設定http服務器,利用它的反向代理功能提供負載均衡支持
http {
#設定mime類型,類型由mime.type文件定義
include /etc/nginx/mime.types;
default_type application/octet-stream;
#設定日志格式
access_log /var/log/nginx/access.log;
#sendfile 指令指定 nginx 是否調用 sendfile 函數(zero copy 方式)來輸出文件,對于普通應用,
#必須設為 on,如果用來進行下載等應用磁盤IO重負載應用,可設置為 off,以平衡磁盤與網絡I/O處理速度,降低系統的uptime.
sendfile on;
#tcp_nopush on;
#連接超時時間
#keepalive_timeout 0;
keepalive_timeout 65;
tcp_nodelay on;
#開啟gzip壓縮
gzip on;
gzip_disable "MSIE [1-6]/.(?!.*SV1)";
#設定請求緩沖
client_header_buffer_size 1k;
large_client_header_buffers 4 4k;
#包含其它配置文件,如自定義的虛擬主機
include /etc/nginx/conf.d/*.conf;
include /etc/nginx/sites-enabled/*;
新聞熱點
疑難解答