博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

nginx 监听socket

Posted on 2016-03-15 12:22  bw_0927  阅读(374)  评论(0)    收藏  举报

http://blog.csdn.net/chosen0ne/article/details/7754608

http://blog.csdn.net/fjslovejhl/article/details/8167522

 

在ngx_http_core_main_conf_t中有ports属性,保存nginx监听的所有端口的信息。ports是ngx_http_conf_port_t类型的数组,而每个ngx_http_conf_port_t结构又具有addrs属性,它存放了对应端口上要监听的地址。addrs是ngx_http_conf_addr_t类型的数组,ngx_http_conf_addr_t结构包含在addr:port上监听的虚拟主机名及对应的配置信息。

ngx_http_core_main_conf_t

    |---> prots: 监听的端口号的数组

                |---> ngx_http_conf_port_t:端口号的配置信息

                               |---> addrs:在该端口号上,监听的所有地址的数组

                                            |---> ngx_http_conf_addr_t:地址配置信息,包含在该addr:port上的多个虚拟主机

                                                           |---> servers:在addr:port上的说个server块的配置信息ngx_http_core_srv_conf_t

                                                           |            |---> ngx_http_core_srv_conf_t

                                                           |---> opt:ngx_http_listen_opt_t类型,监听socket的配置信息

                                                           |---> hash:以server_name为key,ngx_http_core_srv_conf_t为value的hash表,并且server_name不含通配符。

                                                           |---> wc_head:同hash,server_name含前缀通配符。

                                                           |---> wc_tail:同hash,server_name含后缀通配符。