nginx.conf配置文件结构
Nginx的核心模块为Main和Events,此外还包括标准HTTP模块、可选HTTP模块和邮件模块,其还可以支持诸多第三方模块。Main用于配置错误日志、进程及权限等相关的参数,Events用于配置IO模型,如epoll、kqueue、select或poll等,它们是必备模块,HTTP模块用于控制Nginx的HTTP进程。
Nginx的主配置文件由几个段组成,这个段通常也被称为nginx的上下文,每个段的定义格式如下所示。需要注意的是,其每一个指令都必须使用分号(;)结束,否则为语法错误。
<section> {
<directive> <parameters>
}
主要结构(所有配置以分号结尾)如下:
## Main段,定义全局属性
events {
##定义不同IO模型下的工作机制;
}
http {
##定义作为web服务器的相关属性(还可以反向代理mail)
server {
##定义一个虚拟主机的属性,所有web服务必须定义成一个虚拟主机,与httpd不同
location [option] uri {
##定义一个URI的特性
##location中可以嵌套location的
location [option] uri {
#嵌套location
}
if (condition) {
##定义URL重写
}
}
}
upstream <Name> {
##将多个server结合在一起,实现负载均衡
}
}