我们在配置文件中,可以看到类似下面的结构:
http{
server{
location a {
}
location b{
}
}
server {
}
}
在一个http中可以启动多个server,而在一个server中,可以有多个location配置。 我们需要了解他们在系统中的情况,整个关系图如下
图中红色框中是http配置信息,蓝色框中是server信息,而location信息没有标出来。
http模块信息是整个系统的模块中下标为 http_core_module.index 指向信息,使用ngx_http_core_ctx_t结构表示,它里面包含了main server 和location的配置,而这三类配置每个都包含 http模块数量配置。
在main conf 中的http_core_module.ctx_index 为下标的地方,存放了http的所有的server 信息。
在server配置中的loc_conf中,存放了一个server下面的所有的location信息。