nginx http_core模块 配置文件解析 2
2013-03-05 13:56
621 查看
上一篇讲述了配置文件的整体结构,下面重点分析htt_core模块的配置信息结构,得到如下的一幅图:
从上面很明显可以看出需要合并的ngx_http_core_srv_conf_t、ngx_http_core_loc_conf_t结构体。但是ngx_http_merge_locations代码中有:
第二个ngx_http_merge_locations 很明显是合并location下面的ngx_http_core_loc_conf_t结构体,难道location下面还可以再加location? 这是一个疑问。
于是去网上找资料,有: http://tech.uc.cn/?p=300
从上面很明显可以看出需要合并的ngx_http_core_srv_conf_t、ngx_http_core_loc_conf_t结构体。但是ngx_http_merge_locations代码中有:
for (q = ngx_queue_head(locations); q != ngx_queue_sentinel(locations); q = ngx_queue_next(q)) { lq = (ngx_http_location_queue_t *) q; clcf = lq->exact ? lq->exact : lq->inclusive; //遍历得到loc_conf_t ctx->loc_conf = clcf->loc_conf; rv = module->merge_loc_conf(cf, loc_conf[ctx_index], //当前server块的loc_conf数组 clcf->loc_conf[ctx_index]); // == clcf ?(当前server块下的某个location块信息) if (rv != NGX_CONF_OK) { return rv; } rv = ngx_http_merge_locations(cf, clcf->locations, clcf->loc_conf, //location 下面还有location么? module, ctx_index); if (rv != NGX_CONF_OK) { return rv; } }
第二个ngx_http_merge_locations 很明显是合并location下面的ngx_http_core_loc_conf_t结构体,难道location下面还可以再加location? 这是一个疑问。
于是去网上找资料,有: http://tech.uc.cn/?p=300
相关文章推荐
- Nginx http_core模块 配置文件解析
- Nginx 源码分析-- 模块module 解析执行 nginx.conf 配置文件流程分析 二
- Nginx 源码分析-- 模块module 解析执行 nginx.conf 配置文件流程分析 一
- nginx.conf配置文件解析(http、server、location)
- Nginx 模块自主开发六:源码剖析配置文件解析过程
- nginx http模块中配置的实现和解析---1
- 详细解释:nginx中ngx_http_access_module模块(HTTP Access 模块)配置及各个参数含义
- HTTP核心模块配置静态web服务器 2-文件路径的定义
- hadoop core 默认配置文件(core-default.xml)参数解析(三)
- 解析Nginx中的日志模块及日志基本的初始化和过滤配置
- Nginx安装与配置文件解析 【简单描述】
- python ConfigParser模块 配置文件解析
- HTTP核心模块配置静态web服务器 7-文件操作的优化
- nginx配置详解之http模块
- nginx 配置文件解析
- Nginx(4)-nginx配置文件详解-http配置段
- nginx配置文件解析
- Nginx root&alias文件路径配置解析
- Nginx 配置文件解析
- 全面了解Nginx中的HTTP协议相关模块配置