nginx配置文件由三部分组成
第一部分 全局块
从配置文件开始到events块之间的内容,主要会设置一些影响nginx服务器整体运行的配置指令。
比如,
worker_process 1;
这是nginx服务器并发处理服务的关键配置,worker_process值越大,可以支持的并发处理量也越多,但是会受到硬件、软件设备的制约。
第二部分 events块
events块设计的指令主要影响nginx服务器与用户的网络连接。
比如,
events {
worker_connections 1024;
}
这表示每个work process支持的最大连接数为1024。
第三部分 HTTP块
这是nginx服务器配置中最频繁的部分、代理、缓存和日志定义等绝大多数功能和第三方模块的配置都在这里。
需要注意的是:HTTP块也可以包括http全局块、server块。
1.http全局块
http全局块配置的指令包括文件引入、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 on;
#tcp_nopush on;
keepalive_timeout 65;
#gzip on;
2.server块
这块和虚拟主机有密切关系,虚拟主机从用户角度看,和一台独立的硬件主机是完全一样的,该技术的产生是为了节省互联网服务器硬件成本。
每个http块可以包括多个server块,而每个server块就相当于一个虚拟主机。
而每个server块也分为全局server块以及可以同时包含多个location块。