#user nobody; worker_processes 1; #error_log logs/error.log; #error_log logs/error.log notice; #error_log logs/error.log info; #pid logs/nginx.pid; events { worker_connections 1024; } http { include 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 logs/access.log main; sendfile on; #tcp_nopush on; #keepalive_timeout 0; keepalive_timeout 65; #gzip on; server { listen 80; server_name localhost; #charset koi8-r; #access_log logs/host.access.log main; location / { root html; index index.html index.htm; } #error_page 404 /404.html; # redirect server error pages to the static page /50x.html # error_page 500 502 503 504 /50x.html; location = /50x.html { root html; }
} }
上面是nginx的默认配置文件,现在把它肢解
第一部分
#user nobody; #启动用户,指定启动nginx进程的用户。 worker_processes 1; #worker进程数,nginx由master和worker进程组成。属上下级关系,ps -ef|grep nginx可见其进程 #error_log logs/error.log; #错误日志记录等级,由低到高,最低只记录致命错误。 #error_log logs/error.log notice; #error_log logs/error.log info; #pid logs/nginx.pid; #nginx进程pid,默认在logs/nginx.pid记录,通过kill -USR2可更新pid文件,原文件被重命名为nginx.pid.oldbin
第二部分
events { #内核的参数
worker_connections 1024; #控制worker进程的线程数
}
第三部分
http { #网站配置参数,可以嵌套多个server,配置代理,缓存,日志定义等绝大多数功能和第三方模块的配置 include mime.types; #默认支持的文件类型,使用include包含,mime.type文件在conf/下 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 logs/access.log main; #默认日志记录位置及文件名 sendfile on; #默认激活sendfile系统调用来传输文件,以实现零拷贝(完全在内核中操作) #tcp_nopush on; #默认激活tcp_nopush参数可以把httpresponse header和文件的开始放在一个文件里发布,以减少网络报文段的数量 #keepalive_timeout 0; #连接超时时间,秒 keepalive_timeout 65; #gzip on; #默认开启gzip压缩功能 server { #被包含在http段中,用来配置虚拟主机,每一个server段代表一个虚拟主机 listen 80; #当前server监听端口 server_name localhost; #当前server域名 #charset koi8-r; #默认使用koi8-r编码 #access_log logs/host.access.log main; 当前server日志生成位置及文件名 location / { #被包含在server段中,用来匹配域名请求和调用第三方模块 root html; #访问的web网页位置 index index.html index.htm; #指定首页 } #error_page 404 /404.html; #配置错误代码404跳转页面 # redirect server error pages to the static page /50x.html # error_page 500 502 503 504 /50x.html; #配置错误代码50x跳转页面 location = /50x.html { root html; }
} }