main {
user nobody;
worker_processes 1; # 指定nginx 要开启的进程数,一个进程一个线程
worker_rlimit_nofile 10000; # worker 进程的最大打开文件数限制
event { # 设定nginx 的工作模式 及 连接数上限
use epoll; # epoll 多路复用, nginx支持的工作模式 有 select,poll,kqueue,epoll,rtsig,/dev/poll
worker_connections 1024; # 设置nginx 每个进程最大的连接数,默认是 1024,
# 所以你nginx 最大的连接数:max_client = # worker_processes * worker_connections
# 进程最大连接数收到系统最大打开文件数的限制,需要设置 ulimit
http {
include mime.types; # 主模块命令,可以将相关配置放在其他路径,使用此命令引入,减少主配置文件的复杂度
default_type application/octet-steam; # 默认文件类型,当文件类型未定义时,使用此类设置。
log_format main '$remote_addr - $remote_user "$request"'; # 指定nginx 日志的格式
access_log logs/access.log main; # 记录客户端的请求,指令作用域 http,server,location
sendfile on; # 开启高效文件传输模式(zero copy方式), 避免内核缓冲区数据和 用户缓冲区数据之间的拷贝。
tcp_nopush on; # 开启TCP_NOPUSH 套接字(sendfile 开启时有效)
keepalive_timeout 0; 客户端连接超时时间
server { # 虚拟主机配置
listen 80; # 虚拟主机服务端口
server_name localhost; # 用来指定ip 或者域名, 多个域名用逗号分开
location / { # 地址匹配设置,支持正则规则,也支持条件匹配,这里是默认请求地址,用户可以用location 命令对nginx 进行动态和静态网页过滤处理
root html; # 虚拟主机对网页根目录
index index.html index.htm; # 默认访问首页文件
},
location {}
},
server {
location {},
location {}
}
}
}
}