溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

GDB調(diào)試nginx運行流程舉例分析

發(fā)布時間:2021-11-30 11:49:50 來源:億速云 閱讀:182 作者:iii 欄目:網(wǎng)絡管理

這篇文章主要講解了“GDB調(diào)試nginx運行流程舉例分析”,文中的講解內(nèi)容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“GDB調(diào)試nginx運行流程舉例分析”吧!

簡介

在nginx源代碼中有大量的任務被加到紅黑樹中,或者通過注冊回調(diào)函數(shù)來實現(xiàn),通過閱讀源碼很難發(fā)現(xiàn)和跟蹤執(zhí)行流程。但是通過調(diào)試nginx代碼可以很清晰的跟蹤nginx執(zhí)行的流程,可以很直觀的發(fā)現(xiàn)一次http請求響應完整處理生命周期。

nginx modules順序調(diào)試:
1: m = 16
(gdb) 
309	        module = cf->cycle->modules[m]->ctx;
4: *module = {preconfiguration = 0, postconfiguration = 0x4af79a <ngx_http_try_files_init>, create_main_conf = 0, init_main_conf = 0, create_srv_conf = 0, merge_srv_conf = 0, 
  create_loc_conf = 0x4af761 <ngx_http_try_files_create_loc_conf>, merge_loc_conf = 0}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0
2: module = (ngx_http_module_t *) 0x71a500
1: m = 16
(gdb) 
311	        if (module->postconfiguration) {
4: *module = {preconfiguration = 0, postconfiguration = 0x4b0195 <ngx_http_auth_basic_init>, create_main_conf = 0, init_main_conf = 0, create_srv_conf = 0, merge_srv_conf = 0, 
  create_loc_conf = 0x4b00de <ngx_http_auth_basic_create_loc_conf>, merge_loc_conf = 0x4b0117 <ngx_http_auth_basic_merge_loc_conf>}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0
2: module = (ngx_http_module_t *) 0x71a6e0
1: m = 16
(gdb) 
315	            if (module->postconfiguration(cf) != NGX_OK) {
4: *module = {preconfiguration = 0, postconfiguration = 0x4b0195 <ngx_http_auth_basic_init>, create_main_conf = 0, init_main_conf = 0, create_srv_conf = 0, merge_srv_conf = 0, 
  create_loc_conf = 0x4b00de <ngx_http_auth_basic_create_loc_conf>, merge_loc_conf = 0x4b0117 <ngx_http_auth_basic_merge_loc_conf>}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0
2: module = (ngx_http_module_t *) 0x71a6e0
1: m = 16
(gdb) 
304	    for (m = 0; cf->cycle->modules[m]; m++) {
4: *module = {preconfiguration = 0, postconfiguration = 0x4b0195 <ngx_http_auth_basic_init>, create_main_conf = 0, init_main_conf = 0, create_srv_conf = 0, merge_srv_conf = 0, 
  create_loc_conf = 0x4b00de <ngx_http_auth_basic_create_loc_conf>, merge_loc_conf = 0x4b0117 <ngx_http_auth_basic_merge_loc_conf>}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0
2: module = (ngx_http_module_t *) 0x71a6e0
1: m = 16
(gdb) 

Breakpoint 2, ngx_http_block (cf=0x7fffffffe130, cmd=0x712280, conf=0x766bc0) at src/http/ngx_http.c:305
305	        if (cf->cycle->modules[m]->type != NGX_HTTP_MODULE) {
4: *module = {preconfiguration = 0, postconfiguration = 0x4b0195 <ngx_http_auth_basic_init>, create_main_conf = 0, init_main_conf = 0, create_srv_conf = 0, merge_srv_conf = 0, 
  create_loc_conf = 0x4b00de <ngx_http_auth_basic_create_loc_conf>, merge_loc_conf = 0x4b0117 <ngx_http_auth_basic_merge_loc_conf>}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0
2: module = (ngx_http_module_t *) 0x71a6e0
1: m = 17
(gdb) 
309	        module = cf->cycle->modules[m]->ctx;
4: *module = {preconfiguration = 0, postconfiguration = 0x4b0195 <ngx_http_auth_basic_init>, create_main_conf = 0, init_main_conf = 0, create_srv_conf = 0, merge_srv_conf = 0, 
  create_loc_conf = 0x4b00de <ngx_http_auth_basic_create_loc_conf>, merge_loc_conf = 0x4b0117 <ngx_http_auth_basic_merge_loc_conf>}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0
2: module = (ngx_http_module_t *) 0x71a6e0
1: m = 17
(gdb) 
311	        if (module->postconfiguration) {
4: *module = {preconfiguration = 0, postconfiguration = 0x4b0ae8 <ngx_http_access_init>, create_main_conf = 0, init_main_conf = 0, create_srv_conf = 0, merge_srv_conf = 0, 
  create_loc_conf = 0x4b0a34 <ngx_http_access_create_loc_conf>, merge_loc_conf = 0x4b0a6d <ngx_http_access_merge_loc_conf>}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0
2: module = (ngx_http_module_t *) 0x71a8c0
1: m = 17
(gdb) 
315	            if (module->postconfiguration(cf) != NGX_OK) {
4: *module = {preconfiguration = 0, postconfiguration = 0x4b0ae8 <ngx_http_access_init>, create_main_conf = 0, init_main_conf = 0, create_srv_conf = 0, merge_srv_conf = 0, 
  create_loc_conf = 0x4b0a34 <ngx_http_access_create_loc_conf>, merge_loc_conf = 0x4b0a6d <ngx_http_access_merge_loc_conf>}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0
2: module = (ngx_http_module_t *) 0x71a8c0
1: m = 17
(gdb) 
304	    for (m = 0; cf->cycle->modules[m]; m++) {
4: *module = {preconfiguration = 0, postconfiguration = 0x4b0ae8 <ngx_http_access_init>, create_main_conf = 0, init_main_conf = 0, create_srv_conf = 0, merge_srv_conf = 0, 
  create_loc_conf = 0x4b0a34 <ngx_http_access_create_loc_conf>, merge_loc_conf = 0x4b0a6d <ngx_http_access_merge_loc_conf>}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0
2: module = (ngx_http_module_t *) 0x71a8c0
1: m = 17
(gdb) 

Breakpoint 2, ngx_http_block (cf=0x7fffffffe130, cmd=0x712280, conf=0x766bc0) at src/http/ngx_http.c:305
305	        if (cf->cycle->modules[m]->type != NGX_HTTP_MODULE) {
4: *module = {preconfiguration = 0, postconfiguration = 0x4b0ae8 <ngx_http_access_init>, create_main_conf = 0, init_main_conf = 0, create_srv_conf = 0, merge_srv_conf = 0, 
  create_loc_conf = 0x4b0a34 <ngx_http_access_create_loc_conf>, merge_loc_conf = 0x4b0a6d <ngx_http_access_merge_loc_conf>}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0
2: module = (ngx_http_module_t *) 0x71a8c0
1: m = 18
(gdb) 
309	        module = cf->cycle->modules[m]->ctx;
4: *module = {preconfiguration = 0, postconfiguration = 0x4b0ae8 <ngx_http_access_init>, create_main_conf = 0, init_main_conf = 0, create_srv_conf = 0, merge_srv_conf = 0, 
  create_loc_conf = 0x4b0a34 <ngx_http_access_create_loc_conf>, merge_loc_conf = 0x4b0a6d <ngx_http_access_merge_loc_conf>}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0
2: module = (ngx_http_module_t *) 0x71a8c0
1: m = 18
(gdb) 
311	        if (module->postconfiguration) {
4: *module = {preconfiguration = 0, postconfiguration = 0x4b1c47 <ngx_http_limit_conn_init>, create_main_conf = 0, init_main_conf = 0, create_srv_conf = 0, merge_srv_conf = 0, 
  create_loc_conf = 0x4b15a2 <ngx_http_limit_conn_create_conf>, merge_loc_conf = 0x4b15f3 <ngx_http_limit_conn_merge_conf>}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0
2: module = (ngx_http_module_t *) 0x71aba0
1: m = 18
(gdb) 
315	            if (module->postconfiguration(cf) != NGX_OK) {
4: *module = {preconfiguration = 0, postconfiguration = 0x4b1c47 <ngx_http_limit_conn_init>, create_main_conf = 0, init_main_conf = 0, create_srv_conf = 0, merge_srv_conf = 0, 
  create_loc_conf = 0x4b15a2 <ngx_http_limit_conn_create_conf>, merge_loc_conf = 0x4b15f3 <ngx_http_limit_conn_merge_conf>}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0
2: module = (ngx_http_module_t *) 0x71aba0
1: m = 18
(gdb) 
304	    for (m = 0; cf->cycle->modules[m]; m++) {
4: *module = {preconfiguration = 0, postconfiguration = 0x4b1c47 <ngx_http_limit_conn_init>, create_main_conf = 0, init_main_conf = 0, create_srv_conf = 0, merge_srv_conf = 0, 
  create_loc_conf = 0x4b15a2 <ngx_http_limit_conn_create_conf>, merge_loc_conf = 0x4b15f3 <ngx_http_limit_conn_merge_conf>}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0
2: module = (ngx_http_module_t *) 0x71aba0
1: m = 18
(gdb) 

Breakpoint 2, ngx_http_block (cf=0x7fffffffe130, cmd=0x712280, conf=0x766bc0) at src/http/ngx_http.c:305
305	        if (cf->cycle->modules[m]->type != NGX_HTTP_MODULE) {
4: *module = {preconfiguration = 0, postconfiguration = 0x4b1c47 <ngx_http_limit_conn_init>, create_main_conf = 0, init_main_conf = 0, create_srv_conf = 0, merge_srv_conf = 0, 
  create_loc_conf = 0x4b15a2 <ngx_http_limit_conn_create_conf>, merge_loc_conf = 0x4b15f3 <ngx_http_limit_conn_merge_conf>}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0
2: module = (ngx_http_module_t *) 0x71aba0
1: m = 19
(gdb) 
309	        module = cf->cycle->modules[m]->ctx;
4: *module = {preconfiguration = 0, postconfiguration = 0x4b1c47 <ngx_http_limit_conn_init>, create_main_conf = 0, init_main_conf = 0, create_srv_conf = 0, merge_srv_conf = 0, 
  create_loc_conf = 0x4b15a2 <ngx_http_limit_conn_create_conf>, merge_loc_conf = 0x4b15f3 <ngx_http_limit_conn_merge_conf>}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0
2: module = (ngx_http_module_t *) 0x71aba0
1: m = 19
(gdb) 
311	        if (module->postconfiguration) {
4: *module = {preconfiguration = 0, postconfiguration = 0x4b39fc <ngx_http_limit_req_init>, create_main_conf = 0, init_main_conf = 0, create_srv_conf = 0, merge_srv_conf = 0, 
  create_loc_conf = 0x4b305c <ngx_http_limit_req_create_conf>, merge_loc_conf = 0x4b30ad <ngx_http_limit_req_merge_conf>}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0
2: module = (ngx_http_module_t *) 0x71ae80
1: m = 19
(gdb) 
315	            if (module->postconfiguration(cf) != NGX_OK) {
4: *module = {preconfiguration = 0, postconfiguration = 0x4b39fc <ngx_http_limit_req_init>, create_main_conf = 0, init_main_conf = 0, create_srv_conf = 0, merge_srv_conf = 0, 
  create_loc_conf = 0x4b305c <ngx_http_limit_req_create_conf>, merge_loc_conf = 0x4b30ad <ngx_http_limit_req_merge_conf>}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0
2: module = (ngx_http_module_t *) 0x71ae80
1: m = 19
(gdb) 
304	    for (m = 0; cf->cycle->modules[m]; m++) {
4: *module = {preconfiguration = 0, postconfiguration = 0x4b39fc <ngx_http_limit_req_init>, create_main_conf = 0, init_main_conf = 0, create_srv_conf = 0, merge_srv_conf = 0, 
  create_loc_conf = 0x4b305c <ngx_http_limit_req_create_conf>, merge_loc_conf = 0x4b30ad <ngx_http_limit_req_merge_conf>}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0
2: module = (ngx_http_module_t *) 0x71ae80
1: m = 19
(gdb) 

Breakpoint 2, ngx_http_block (cf=0x7fffffffe130, cmd=0x712280, conf=0x766bc0) at src/http/ngx_http.c:305
305	        if (cf->cycle->modules[m]->type != NGX_HTTP_MODULE) {
4: *module = {preconfiguration = 0, postconfiguration = 0x4b39fc <ngx_http_limit_req_init>, create_main_conf = 0, init_main_conf = 0, create_srv_conf = 0, merge_srv_conf = 0, 
  create_loc_conf = 0x4b305c <ngx_http_limit_req_create_conf>, merge_loc_conf = 0x4b30ad <ngx_http_limit_req_merge_conf>}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0
2: module = (ngx_http_module_t *) 0x71ae80
1: m = 20
(gdb) 
309	        module = cf->cycle->modules[m]->ctx;
4: *module = {preconfiguration = 0, postconfiguration = 0x4b39fc <ngx_http_limit_req_init>, create_main_conf = 0, init_main_conf = 0, create_srv_conf = 0, merge_srv_conf = 0, 
  create_loc_conf = 0x4b305c <ngx_http_limit_req_create_conf>, merge_loc_conf = 0x4b30ad <ngx_http_limit_req_merge_conf>}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0
2: module = (ngx_http_module_t *) 0x71ae80
1: m = 20
(gdb) 
311	        if (module->postconfiguration) {
4: *module = {preconfiguration = 0x4b45e0 <ngx_http_realip_add_variables>, postconfiguration = 0x4b465d <ngx_http_realip_init>, create_main_conf = 0, init_main_conf = 0, 
  create_srv_conf = 0, merge_srv_conf = 0, create_loc_conf = 0x4b44b3 <ngx_http_realip_create_loc_conf>, merge_loc_conf = 0x4b4504 <ngx_http_realip_merge_loc_conf>}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0
2: module = (ngx_http_module_t *) 0x71b080
1: m = 20
(gdb) 
315	            if (module->postconfiguration(cf) != NGX_OK) {
4: *module = {preconfiguration = 0x4b45e0 <ngx_http_realip_add_variables>, postconfiguration = 0x4b465d <ngx_http_realip_init>, create_main_conf = 0, init_main_conf = 0, 
  create_srv_conf = 0, merge_srv_conf = 0, create_loc_conf = 0x4b44b3 <ngx_http_realip_create_loc_conf>, merge_loc_conf = 0x4b4504 <ngx_http_realip_merge_loc_conf>}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0
2: module = (ngx_http_module_t *) 0x71b080
1: m = 20
(gdb) 
304	    for (m = 0; cf->cycle->modules[m]; m++) {
4: *module = {preconfiguration = 0x4b45e0 <ngx_http_realip_add_variables>, postconfiguration = 0x4b465d <ngx_http_realip_init>, create_main_conf = 0, init_main_conf = 0, 
  create_srv_conf = 0, merge_srv_conf = 0, create_loc_conf = 0x4b44b3 <ngx_http_realip_create_loc_conf>, merge_loc_conf = 0x4b4504 <ngx_http_realip_merge_loc_conf>}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0
2: module = (ngx_http_module_t *) 0x71b080
1: m = 20
(gdb) 

Breakpoint 2, ngx_http_block (cf=0x7fffffffe130, cmd=0x712280, conf=0x766bc0) at src/http/ngx_http.c:305
305	        if (cf->cycle->modules[m]->type != NGX_HTTP_MODULE) {
4: *module = {preconfiguration = 0x4b45e0 <ngx_http_realip_add_variables>, postconfiguration = 0x4b465d <ngx_http_realip_init>, create_main_conf = 0, init_main_conf = 0, 
  create_srv_conf = 0, merge_srv_conf = 0, create_loc_conf = 0x4b44b3 <ngx_http_realip_create_loc_conf>, merge_loc_conf = 0x4b4504 <ngx_http_realip_merge_loc_conf>}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0
2: module = (ngx_http_module_t *) 0x71b080
1: m = 21
(gdb) 
309	        module = cf->cycle->modules[m]->ctx;
4: *module = {preconfiguration = 0x4b45e0 <ngx_http_realip_add_variables>, postconfiguration = 0x4b465d <ngx_http_realip_init>, create_main_conf = 0, init_main_conf = 0, 
  create_srv_conf = 0, merge_srv_conf = 0, create_loc_conf = 0x4b44b3 <ngx_http_realip_create_loc_conf>, merge_loc_conf = 0x4b4504 <ngx_http_realip_merge_loc_conf>}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0
2: module = (ngx_http_module_t *) 0x71b080
1: m = 21
(gdb) 
311	        if (module->postconfiguration) {
4: *module = {preconfiguration = 0, postconfiguration = 0, create_main_conf = 0, init_main_conf = 0, create_srv_conf = 0, merge_srv_conf = 0, create_loc_conf = 0, merge_loc_conf = 0}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0
2: module = (ngx_http_module_t *) 0x736ea0
1: m = 21
(gdb) 
304	    for (m = 0; cf->cycle->modules[m]; m++) {
4: *module = {preconfiguration = 0, postconfiguration = 0, create_main_conf = 0, init_main_conf = 0, create_srv_conf = 0, merge_srv_conf = 0, create_loc_conf = 0, merge_loc_conf = 0}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0
2: module = (ngx_http_module_t *) 0x736ea0
1: m = 21
(gdb) 

Breakpoint 2, ngx_http_block (cf=0x7fffffffe130, cmd=0x712280, conf=0x766bc0) at src/http/ngx_http.c:305
305	        if (cf->cycle->modules[m]->type != NGX_HTTP_MODULE) {
4: *module = {preconfiguration = 0, postconfiguration = 0, create_main_conf = 0, init_main_conf = 0, create_srv_conf = 0, merge_srv_conf = 0, create_loc_conf = 0, merge_loc_conf = 0}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0
2: module = (ngx_http_module_t *) 0x736ea0
1: m = 22
(gdb) 
309	        module = cf->cycle->modules[m]->ctx;
4: *module = {preconfiguration = 0, postconfiguration = 0, create_main_conf = 0, init_main_conf = 0, create_srv_conf = 0, merge_srv_conf = 0, create_loc_conf = 0, merge_loc_conf = 0}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0
2: module = (ngx_http_module_t *) 0x736ea0
1: m = 22
(gdb) 
311	        if (module->postconfiguration) {
4: *module = {preconfiguration = 0x4b870e <ngx_http_geoip_add_variables>, postconfiguration = 0, create_main_conf = 0x4b878b <ngx_http_geoip_create_conf>, 
  init_main_conf = 0x4b880e <ngx_http_geoip_init_conf>, create_srv_conf = 0, merge_srv_conf = 0, create_loc_conf = 0, merge_loc_conf = 0}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0
2: module = (ngx_http_module_t *) 0x71b560
1: m = 22
(gdb) 
304	    for (m = 0; cf->cycle->modules[m]; m++) {
4: *module = {preconfiguration = 0x4b870e <ngx_http_geoip_add_variables>, postconfiguration = 0, create_main_conf = 0x4b878b <ngx_http_geoip_create_conf>, 
  init_main_conf = 0x4b880e <ngx_http_geoip_init_conf>, create_srv_conf = 0, merge_srv_conf = 0, create_loc_conf = 0, merge_loc_conf = 0}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0
2: module = (ngx_http_module_t *) 0x71b560
1: m = 22
(gdb) 

Breakpoint 2, ngx_http_block (cf=0x7fffffffe130, cmd=0x712280, conf=0x766bc0) at src/http/ngx_http.c:305
305	        if (cf->cycle->modules[m]->type != NGX_HTTP_MODULE) {
4: *module = {preconfiguration = 0x4b870e <ngx_http_geoip_add_variables>, postconfiguration = 0, create_main_conf = 0x4b878b <ngx_http_geoip_create_conf>, 
  init_main_conf = 0x4b880e <ngx_http_geoip_init_conf>, create_srv_conf = 0, merge_srv_conf = 0, create_loc_conf = 0, merge_loc_conf = 0}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0
2: module = (ngx_http_module_t *) 0x71b560
1: m = 23
(gdb) 
309	        module = cf->cycle->modules[m]->ctx;
4: *module = {preconfiguration = 0x4b870e <ngx_http_geoip_add_variables>, postconfiguration = 0, create_main_conf = 0x4b878b <ngx_http_geoip_create_conf>, 
  init_main_conf = 0x4b880e <ngx_http_geoip_init_conf>, create_srv_conf = 0, merge_srv_conf = 0, create_loc_conf = 0, merge_loc_conf = 0}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0
2: module = (ngx_http_module_t *) 0x71b560
1: m = 23
(gdb) 
311	        if (module->postconfiguration) {
4: *module = {preconfiguration = 0, postconfiguration = 0, create_main_conf = 0x4b9181 <ngx_http_map_create_conf>, init_main_conf = 0, create_srv_conf = 0, merge_srv_conf = 0, 
  create_loc_conf = 0, merge_loc_conf = 0}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0
2: module = (ngx_http_module_t *) 0x71bb20
1: m = 23
(gdb) 
304	    for (m = 0; cf->cycle->modules[m]; m++) {
4: *module = {preconfiguration = 0, postconfiguration = 0, create_main_conf = 0x4b9181 <ngx_http_map_create_conf>, init_main_conf = 0, create_srv_conf = 0, merge_srv_conf = 0, 
  create_loc_conf = 0, merge_loc_conf = 0}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0
2: module = (ngx_http_module_t *) 0x71bb20
1: m = 23
(gdb) 

Breakpoint 2, ngx_http_block (cf=0x7fffffffe130, cmd=0x712280, conf=0x766bc0) at src/http/ngx_http.c:305
305	        if (cf->cycle->modules[m]->type != NGX_HTTP_MODULE) {
4: *module = {preconfiguration = 0, postconfiguration = 0, create_main_conf = 0x4b9181 <ngx_http_map_create_conf>, init_main_conf = 0, create_srv_conf = 0, merge_srv_conf = 0, 
  create_loc_conf = 0, merge_loc_conf = 0}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0
2: module = (ngx_http_module_t *) 0x71bb20
1: m = 24
(gdb) 
309	        module = cf->cycle->modules[m]->ctx;
4: *module = {preconfiguration = 0, postconfiguration = 0, create_main_conf = 0x4b9181 <ngx_http_map_create_conf>, init_main_conf = 0, create_srv_conf = 0, merge_srv_conf = 0, 
  create_loc_conf = 0, merge_loc_conf = 0}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0
2: module = (ngx_http_module_t *) 0x71bb20
1: m = 24
(gdb) 
311	        if (module->postconfiguration) {
4: *module = {preconfiguration = 0, postconfiguration = 0, create_main_conf = 0, init_main_conf = 0, create_srv_conf = 0, merge_srv_conf = 0, create_loc_conf = 0, merge_loc_conf = 0}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0
2: module = (ngx_http_module_t *) 0x736f00
1: m = 24
(gdb) 
304	    for (m = 0; cf->cycle->modules[m]; m++) {
4: *module = {preconfiguration = 0, postconfiguration = 0, create_main_conf = 0, init_main_conf = 0, create_srv_conf = 0, merge_srv_conf = 0, create_loc_conf = 0, merge_loc_conf = 0}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0
2: module = (ngx_http_module_t *) 0x736f00
1: m = 24
(gdb) 

Breakpoint 2, ngx_http_block (cf=0x7fffffffe130, cmd=0x712280, conf=0x766bc0) at src/http/ngx_http.c:305
305	        if (cf->cycle->modules[m]->type != NGX_HTTP_MODULE) {
4: *module = {preconfiguration = 0, postconfiguration = 0, create_main_conf = 0, init_main_conf = 0, create_srv_conf = 0, merge_srv_conf = 0, create_loc_conf = 0, merge_loc_conf = 0}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0
2: module = (ngx_http_module_t *) 0x736f00
1: m = 25
(gdb) 
309	        module = cf->cycle->modules[m]->ctx;
4: *module = {preconfiguration = 0, postconfiguration = 0, create_main_conf = 0, init_main_conf = 0, create_srv_conf = 0, merge_srv_conf = 0, create_loc_conf = 0, merge_loc_conf = 0}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0
2: module = (ngx_http_module_t *) 0x736f00
1: m = 25
(gdb) 
311	        if (module->postconfiguration) {
4: *module = {preconfiguration = 0x4bace0 <ngx_http_referer_add_variables>, postconfiguration = 0, create_main_conf = 0, init_main_conf = 0, create_srv_conf = 0, merge_srv_conf = 0, 
  create_loc_conf = 0x4bad29 <ngx_http_referer_create_conf>, merge_loc_conf = 0x4badaa <ngx_http_referer_merge_conf>}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0
2: module = (ngx_http_module_t *) 0x71be80
1: m = 25
(gdb) 
304	    for (m = 0; cf->cycle->modules[m]; m++) {
4: *module = {preconfiguration = 0x4bace0 <ngx_http_referer_add_variables>, postconfiguration = 0, create_main_conf = 0, init_main_conf = 0, create_srv_conf = 0, merge_srv_conf = 0, 
  create_loc_conf = 0x4bad29 <ngx_http_referer_create_conf>, merge_loc_conf = 0x4badaa <ngx_http_referer_merge_conf>}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0
2: module = (ngx_http_module_t *) 0x71be80
1: m = 25
(gdb) 

Breakpoint 2, ngx_http_block (cf=0x7fffffffe130, cmd=0x712280, conf=0x766bc0) at src/http/ngx_http.c:305
305	        if (cf->cycle->modules[m]->type != NGX_HTTP_MODULE) {
4: *module = {preconfiguration = 0x4bace0 <ngx_http_referer_add_variables>, postconfiguration = 0, create_main_conf = 0, init_main_conf = 0, create_srv_conf = 0, merge_srv_conf = 0, 
  create_loc_conf = 0x4bad29 <ngx_http_referer_create_conf>, merge_loc_conf = 0x4badaa <ngx_http_referer_merge_conf>}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0
2: module = (ngx_http_module_t *) 0x71be80
1: m = 26
(gdb) 
309	        module = cf->cycle->modules[m]->ctx;
4: *module = {preconfiguration = 0x4bace0 <ngx_http_referer_add_variables>, postconfiguration = 0, create_main_conf = 0, init_main_conf = 0, create_srv_conf = 0, merge_srv_conf = 0, 
  create_loc_conf = 0x4bad29 <ngx_http_referer_create_conf>, merge_loc_conf = 0x4badaa <ngx_http_referer_merge_conf>}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0
2: module = (ngx_http_module_t *) 0x71be80
1: m = 26
(gdb) 
311	        if (module->postconfiguration) {
4: *module = {preconfiguration = 0, postconfiguration = 0x4bbf3e <ngx_http_rewrite_init>, create_main_conf = 0, init_main_conf = 0, create_srv_conf = 0, merge_srv_conf = 0, 
  create_loc_conf = 0x4bbdbd <ngx_http_rewrite_create_loc_conf>, merge_loc_conf = 0x4bbe1a <ngx_http_rewrite_merge_loc_conf>}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0
2: module = (ngx_http_module_t *) 0x71c160
1: m = 26
(gdb) 
315	            if (module->postconfiguration(cf) != NGX_OK) {
4: *module = {preconfiguration = 0, postconfiguration = 0x4bbf3e <ngx_http_rewrite_init>, create_main_conf = 0, init_main_conf = 0, create_srv_conf = 0, merge_srv_conf = 0, 
  create_loc_conf = 0x4bbdbd <ngx_http_rewrite_create_loc_conf>, merge_loc_conf = 0x4bbe1a <ngx_http_rewrite_merge_loc_conf>}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0
2: module = (ngx_http_module_t *) 0x71c160
1: m = 26
(gdb) 
304	    for (m = 0; cf->cycle->modules[m]; m++) {
4: *module = {preconfiguration = 0, postconfiguration = 0x4bbf3e <ngx_http_rewrite_init>, create_main_conf = 0, init_main_conf = 0, create_srv_conf = 0, merge_srv_conf = 0, 
  create_loc_conf = 0x4bbdbd <ngx_http_rewrite_create_loc_conf>, merge_loc_conf = 0x4bbe1a <ngx_http_rewrite_merge_loc_conf>}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0
2: module = (ngx_http_module_t *) 0x71c160
1: m = 26
(gdb) 

Breakpoint 2, ngx_http_block (cf=0x7fffffffe130, cmd=0x712280, conf=0x766bc0) at src/http/ngx_http.c:305
305	        if (cf->cycle->modules[m]->type != NGX_HTTP_MODULE) {
4: *module = {preconfiguration = 0, postconfiguration = 0x4bbf3e <ngx_http_rewrite_init>, create_main_conf = 0, init_main_conf = 0, create_srv_conf = 0, merge_srv_conf = 0, 
  create_loc_conf = 0x4bbdbd <ngx_http_rewrite_create_loc_conf>, merge_loc_conf = 0x4bbe1a <ngx_http_rewrite_merge_loc_conf>}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0
2: module = (ngx_http_module_t *) 0x71c160
1: m = 27
(gdb) 
309	        module = cf->cycle->modules[m]->ctx;
4: *module = {preconfiguration = 0, postconfiguration = 0x4bbf3e <ngx_http_rewrite_init>, create_main_conf = 0, init_main_conf = 0, create_srv_conf = 0, merge_srv_conf = 0, 
  create_loc_conf = 0x4bbdbd <ngx_http_rewrite_create_loc_conf>, merge_loc_conf = 0x4bbe1a <ngx_http_rewrite_merge_loc_conf>}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0
2: module = (ngx_http_module_t *) 0x71c160
1: m = 27
(gdb) 
311	        if (module->postconfiguration) {
4: *module = {preconfiguration = 0x4bdd53 <ngx_http_ssl_add_variables>, postconfiguration = 0x4bf0b8 <ngx_http_ssl_init>, create_main_conf = 0, init_main_conf = 0, 
  create_srv_conf = 0x4bddd0 <ngx_http_ssl_create_srv_conf>, merge_srv_conf = 0x4bdec2 <ngx_http_ssl_merge_srv_conf>, create_loc_conf = 0, merge_loc_conf = 0}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0
2: module = (ngx_http_module_t *) 0x71c900
1: m = 27
(gdb) 
315	            if (module->postconfiguration(cf) != NGX_OK) {
4: *module = {preconfiguration = 0x4bdd53 <ngx_http_ssl_add_variables>, postconfiguration = 0x4bf0b8 <ngx_http_ssl_init>, create_main_conf = 0, init_main_conf = 0, 
  create_srv_conf = 0x4bddd0 <ngx_http_ssl_create_srv_conf>, merge_srv_conf = 0x4bdec2 <ngx_http_ssl_merge_srv_conf>, create_loc_conf = 0, merge_loc_conf = 0}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0
2: module = (ngx_http_module_t *) 0x71c900
1: m = 27
(gdb) 
304	    for (m = 0; cf->cycle->modules[m]; m++) {
4: *module = {preconfiguration = 0x4bdd53 <ngx_http_ssl_add_variables>, postconfiguration = 0x4bf0b8 <ngx_http_ssl_init>, create_main_conf = 0, init_main_conf = 0, 
  create_srv_conf = 0x4bddd0 <ngx_http_ssl_create_srv_conf>, merge_srv_conf = 0x4bdec2 <ngx_http_ssl_merge_srv_conf>, create_loc_conf = 0, merge_loc_conf = 0}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0
2: module = (ngx_http_module_t *) 0x71c900
1: m = 27
(gdb) 

Breakpoint 2, ngx_http_block (cf=0x7fffffffe130, cmd=0x712280, conf=0x766bc0) at src/http/ngx_http.c:305
305	        if (cf->cycle->modules[m]->type != NGX_HTTP_MODULE) {
4: *module = {preconfiguration = 0x4bdd53 <ngx_http_ssl_add_variables>, postconfiguration = 0x4bf0b8 <ngx_http_ssl_init>, create_main_conf = 0, init_main_conf = 0, 
  create_srv_conf = 0x4bddd0 <ngx_http_ssl_create_srv_conf>, merge_srv_conf = 0x4bdec2 <ngx_http_ssl_merge_srv_conf>, create_loc_conf = 0, merge_loc_conf = 0}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0
2: module = (ngx_http_module_t *) 0x71c900
1: m = 28
(gdb) 
309	        module = cf->cycle->modules[m]->ctx;
4: *module = {preconfiguration = 0x4bdd53 <ngx_http_ssl_add_variables>, postconfiguration = 0x4bf0b8 <ngx_http_ssl_init>, create_main_conf = 0, init_main_conf = 0, 
  create_srv_conf = 0x4bddd0 <ngx_http_ssl_create_srv_conf>, merge_srv_conf = 0x4bdec2 <ngx_http_ssl_merge_srv_conf>, create_loc_conf = 0, merge_loc_conf = 0}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0
2: module = (ngx_http_module_t *) 0x71c900
1: m = 28
(gdb) 
311	        if (module->postconfiguration) {
4: *module = {preconfiguration = 0x4c3984 <ngx_http_proxy_add_variables>, postconfiguration = 0, create_main_conf = 0x4c3a01 <ngx_http_proxy_create_main_conf>, init_main_conf = 0, 
  create_srv_conf = 0, merge_srv_conf = 0, create_loc_conf = 0x4c3a6d <ngx_http_proxy_create_loc_conf>, merge_loc_conf = 0x4c3d98 <ngx_http_proxy_merge_loc_conf>}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0
2: module = (ngx_http_module_t *) 0x71e0e0
1: m = 28
(gdb) 
304	    for (m = 0; cf->cycle->modules[m]; m++) {
4: *module = {preconfiguration = 0x4c3984 <ngx_http_proxy_add_variables>, postconfiguration = 0, create_main_conf = 0x4c3a01 <ngx_http_proxy_create_main_conf>, init_main_conf = 0, 
  create_srv_conf = 0, merge_srv_conf = 0, create_loc_conf = 0x4c3a6d <ngx_http_proxy_create_loc_conf>, merge_loc_conf = 0x4c3d98 <ngx_http_proxy_merge_loc_conf>}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0
2: module = (ngx_http_module_t *) 0x71e0e0
1: m = 28
(gdb) 

Breakpoint 2, ngx_http_block (cf=0x7fffffffe130, cmd=0x712280, conf=0x766bc0) at src/http/ngx_http.c:305
305	        if (cf->cycle->modules[m]->type != NGX_HTTP_MODULE) {
4: *module = {preconfiguration = 0x4c3984 <ngx_http_proxy_add_variables>, postconfiguration = 0, create_main_conf = 0x4c3a01 <ngx_http_proxy_create_main_conf>, init_main_conf = 0, 
  create_srv_conf = 0, merge_srv_conf = 0, create_loc_conf = 0x4c3a6d <ngx_http_proxy_create_loc_conf>, merge_loc_conf = 0x4c3d98 <ngx_http_proxy_merge_loc_conf>}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0
2: module = (ngx_http_module_t *) 0x71e0e0
1: m = 29
(gdb) 
309	        module = cf->cycle->modules[m]->ctx;
4: *module = {preconfiguration = 0x4c3984 <ngx_http_proxy_add_variables>, postconfiguration = 0, create_main_conf = 0x4c3a01 <ngx_http_proxy_create_main_conf>, init_main_conf = 0, 
  create_srv_conf = 0, merge_srv_conf = 0, create_loc_conf = 0x4c3a6d <ngx_http_proxy_create_loc_conf>, merge_loc_conf = 0x4c3d98 <ngx_http_proxy_merge_loc_conf>}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0
2: module = (ngx_http_module_t *) 0x71e0e0
1: m = 29
(gdb) 
311	        if (module->postconfiguration) {
4: *module = {preconfiguration = 0x4cbee2 <ngx_http_fastcgi_add_variables>, postconfiguration = 0, create_main_conf = 0x4cbf5f <ngx_http_fastcgi_create_main_conf>, init_main_conf = 0, 
  create_srv_conf = 0, merge_srv_conf = 0, create_loc_conf = 0x4cbfcb <ngx_http_fastcgi_create_loc_conf>, merge_loc_conf = 0x4cc251 <ngx_http_fastcgi_merge_loc_conf>}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0
2: module = (ngx_http_module_t *) 0x71f360
1: m = 29
(gdb) 
304	    for (m = 0; cf->cycle->modules[m]; m++) {
4: *module = {preconfiguration = 0x4cbee2 <ngx_http_fastcgi_add_variables>, postconfiguration = 0, create_main_conf = 0x4cbf5f <ngx_http_fastcgi_create_main_conf>, init_main_conf = 0, 
  create_srv_conf = 0, merge_srv_conf = 0, create_loc_conf = 0x4cbfcb <ngx_http_fastcgi_create_loc_conf>, merge_loc_conf = 0x4cc251 <ngx_http_fastcgi_merge_loc_conf>}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0
2: module = (ngx_http_module_t *) 0x71f360
1: m = 29
(gdb) 

Breakpoint 2, ngx_http_block (cf=0x7fffffffe130, cmd=0x712280, conf=0x766bc0) at src/http/ngx_http.c:305
305	        if (cf->cycle->modules[m]->type != NGX_HTTP_MODULE) {
4: *module = {preconfiguration = 0x4cbee2 <ngx_http_fastcgi_add_variables>, postconfiguration = 0, create_main_conf = 0x4cbf5f <ngx_http_fastcgi_create_main_conf>, init_main_conf = 0, 
  create_srv_conf = 0, merge_srv_conf = 0, create_loc_conf = 0x4cbfcb <ngx_http_fastcgi_create_loc_conf>, merge_loc_conf = 0x4cc251 <ngx_http_fastcgi_merge_loc_conf>}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0
2: module = (ngx_http_module_t *) 0x71f360
1: m = 30
(gdb) 
309	        module = cf->cycle->modules[m]->ctx;
4: *module = {preconfiguration = 0x4cbee2 <ngx_http_fastcgi_add_variables>, postconfiguration = 0, create_main_conf = 0x4cbf5f <ngx_http_fastcgi_create_main_conf>, init_main_conf = 0, 
  create_srv_conf = 0, merge_srv_conf = 0, create_loc_conf = 0x4cbfcb <ngx_http_fastcgi_create_loc_conf>, merge_loc_conf = 0x4cc251 <ngx_http_fastcgi_merge_loc_conf>}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0
2: module = (ngx_http_module_t *) 0x71f360
1: m = 30
(gdb) 
311	        if (module->postconfiguration) {
4: *module = {preconfiguration = 0, postconfiguration = 0, create_main_conf = 0x4d04bc <ngx_http_uwsgi_create_main_conf>, init_main_conf = 0, create_srv_conf = 0, merge_srv_conf = 0, 
  create_loc_conf = 0x4d0528 <ngx_http_uwsgi_create_loc_conf>, merge_loc_conf = 0x4d07f9 <ngx_http_uwsgi_merge_loc_conf>}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0
2: module = (ngx_http_module_t *) 0x720600
1: m = 30
(gdb) 
304	    for (m = 0; cf->cycle->modules[m]; m++) {
4: *module = {preconfiguration = 0, postconfiguration = 0, create_main_conf = 0x4d04bc <ngx_http_uwsgi_create_main_conf>, init_main_conf = 0, create_srv_conf = 0, merge_srv_conf = 0, 
  create_loc_conf = 0x4d0528 <ngx_http_uwsgi_create_loc_conf>, merge_loc_conf = 0x4d07f9 <ngx_http_uwsgi_merge_loc_conf>}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0
2: module = (ngx_http_module_t *) 0x720600
1: m = 30
(gdb) 

Breakpoint 2, ngx_http_block (cf=0x7fffffffe130, cmd=0x712280, conf=0x766bc0) at src/http/ngx_http.c:305
305	        if (cf->cycle->modules[m]->type != NGX_HTTP_MODULE) {
4: *module = {preconfiguration = 0, postconfiguration = 0, create_main_conf = 0x4d04bc <ngx_http_uwsgi_create_main_conf>, init_main_conf = 0, create_srv_conf = 0, merge_srv_conf = 0, 
  create_loc_conf = 0x4d0528 <ngx_http_uwsgi_create_loc_conf>, merge_loc_conf = 0x4d07f9 <ngx_http_uwsgi_merge_loc_conf>}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0
2: module = (ngx_http_module_t *) 0x720600
1: m = 31
(gdb) 
309	        module = cf->cycle->modules[m]->ctx;
4: *module = {preconfiguration = 0, postconfiguration = 0, create_main_conf = 0x4d04bc <ngx_http_uwsgi_create_main_conf>, init_main_conf = 0, create_srv_conf = 0, merge_srv_conf = 0, 
  create_loc_conf = 0x4d0528 <ngx_http_uwsgi_create_loc_conf>, merge_loc_conf = 0x4d07f9 <ngx_http_uwsgi_merge_loc_conf>}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0
2: module = (ngx_http_module_t *) 0x720600
1: m = 31
(gdb) 
311	        if (module->postconfiguration) {
4: *module = {preconfiguration = 0, postconfiguration = 0, create_main_conf = 0x4d49ff <ngx_http_scgi_create_main_conf>, init_main_conf = 0, create_srv_conf = 0, merge_srv_conf = 0, 
  create_loc_conf = 0x4d4a6b <ngx_http_scgi_create_loc_conf>, merge_loc_conf = 0x4d4cd3 <ngx_http_scgi_merge_loc_conf>}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0
2: module = (ngx_http_module_t *) 0x721360
1: m = 31
(gdb) 
304	    for (m = 0; cf->cycle->modules[m]; m++) {
4: *module = {preconfiguration = 0, postconfiguration = 0, create_main_conf = 0x4d49ff <ngx_http_scgi_create_main_conf>, init_main_conf = 0, create_srv_conf = 0, merge_srv_conf = 0, 
  create_loc_conf = 0x4d4a6b <ngx_http_scgi_create_loc_conf>, merge_loc_conf = 0x4d4cd3 <ngx_http_scgi_merge_loc_conf>}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0
2: module = (ngx_http_module_t *) 0x721360
1: m = 31
(gdb) 

Breakpoint 2, ngx_http_block (cf=0x7fffffffe130, cmd=0x712280, conf=0x766bc0) at src/http/ngx_http.c:305
305	        if (cf->cycle->modules[m]->type != NGX_HTTP_MODULE) {
4: *module = {preconfiguration = 0, postconfiguration = 0, create_main_conf = 0x4d49ff <ngx_http_scgi_create_main_conf>, init_main_conf = 0, create_srv_conf = 0, merge_srv_conf = 0, 
  create_loc_conf = 0x4d4a6b <ngx_http_scgi_create_loc_conf>, merge_loc_conf = 0x4d4cd3 <ngx_http_scgi_merge_loc_conf>}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0
2: module = (ngx_http_module_t *) 0x721360
1: m = 32
(gdb) 
309	        module = cf->cycle->modules[m]->ctx;
4: *module = {preconfiguration = 0, postconfiguration = 0, create_main_conf = 0x4d49ff <ngx_http_scgi_create_main_conf>, init_main_conf = 0, create_srv_conf = 0, merge_srv_conf = 0, 
  create_loc_conf = 0x4d4a6b <ngx_http_scgi_create_loc_conf>, merge_loc_conf = 0x4d4cd3 <ngx_http_scgi_merge_loc_conf>}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0
2: module = (ngx_http_module_t *) 0x721360
1: m = 32
(gdb) 
311	        if (module->postconfiguration) {
4: *module = {preconfiguration = 0, postconfiguration = 0, create_main_conf = 0, init_main_conf = 0, create_srv_conf = 0, merge_srv_conf = 0, 
  create_loc_conf = 0x4d7a8f <ngx_http_memcached_create_loc_conf>, merge_loc_conf = 0x4d7bfc <ngx_http_memcached_merge_loc_conf>}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0
2: module = (ngx_http_module_t *) 0x721860
1: m = 32
(gdb) 
304	    for (m = 0; cf->cycle->modules[m]; m++) {
4: *module = {preconfiguration = 0, postconfiguration = 0, create_main_conf = 0, init_main_conf = 0, create_srv_conf = 0, merge_srv_conf = 0, 
  create_loc_conf = 0x4d7a8f <ngx_http_memcached_create_loc_conf>, merge_loc_conf = 0x4d7bfc <ngx_http_memcached_merge_loc_conf>}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0
2: module = (ngx_http_module_t *) 0x721860
1: m = 32
(gdb) 

Breakpoint 2, ngx_http_block (cf=0x7fffffffe130, cmd=0x712280, conf=0x766bc0) at src/http/ngx_http.c:305
305	        if (cf->cycle->modules[m]->type != NGX_HTTP_MODULE) {
4: *module = {preconfiguration = 0, postconfiguration = 0, create_main_conf = 0, init_main_conf = 0, create_srv_conf = 0, merge_srv_conf = 0, 
  create_loc_conf = 0x4d7a8f <ngx_http_memcached_create_loc_conf>, merge_loc_conf = 0x4d7bfc <ngx_http_memcached_merge_loc_conf>}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0
2: module = (ngx_http_module_t *) 0x721860
1: m = 33
(gdb) 
309	        module = cf->cycle->modules[m]->ctx;
4: *module = {preconfiguration = 0, postconfiguration = 0, create_main_conf = 0, init_main_conf = 0, create_srv_conf = 0, merge_srv_conf = 0, 
  create_loc_conf = 0x4d7a8f <ngx_http_memcached_create_loc_conf>, merge_loc_conf = 0x4d7bfc <ngx_http_memcached_merge_loc_conf>}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0
2: module = (ngx_http_module_t *) 0x721860
1: m = 33
(gdb) 
311	        if (module->postconfiguration) {
4: *module = {preconfiguration = 0, postconfiguration = 0, create_main_conf = 0, init_main_conf = 0, create_srv_conf = 0, merge_srv_conf = 0, create_loc_conf = 0, merge_loc_conf = 0}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0
2: module = (ngx_http_module_t *) 0x736f40
1: m = 33
(gdb) 
304	    for (m = 0; cf->cycle->modules[m]; m++) {
4: *module = {preconfiguration = 0, postconfiguration = 0, create_main_conf = 0, init_main_conf = 0, create_srv_conf = 0, merge_srv_conf = 0, create_loc_conf = 0, merge_loc_conf = 0}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0
2: module = (ngx_http_module_t *) 0x736f40
1: m = 33
(gdb) 

Breakpoint 2, ngx_http_block (cf=0x7fffffffe130, cmd=0x712280, conf=0x766bc0) at src/http/ngx_http.c:305
305	        if (cf->cycle->modules[m]->type != NGX_HTTP_MODULE) {
4: *module = {preconfiguration = 0, postconfiguration = 0, create_main_conf = 0, init_main_conf = 0, create_srv_conf = 0, merge_srv_conf = 0, create_loc_conf = 0, merge_loc_conf = 0}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0
2: module = (ngx_http_module_t *) 0x736f40
1: m = 34
(gdb) 
309	        module = cf->cycle->modules[m]->ctx;
4: *module = {preconfiguration = 0, postconfiguration = 0, create_main_conf = 0, init_main_conf = 0, create_srv_conf = 0, merge_srv_conf = 0, create_loc_conf = 0, merge_loc_conf = 0}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0
2: module = (ngx_http_module_t *) 0x736f40
1: m = 34
(gdb) 
311	        if (module->postconfiguration) {
4: *module = {preconfiguration = 0x4d8572 <ngx_http_browser_add_variables>, postconfiguration = 0, create_main_conf = 0, init_main_conf = 0, create_srv_conf = 0, merge_srv_conf = 0, 
  create_loc_conf = 0x4d85ef <ngx_http_browser_create_conf>, merge_loc_conf = 0x4d8628 <ngx_http_browser_merge_conf>}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0
2: module = (ngx_http_module_t *) 0x721c60
1: m = 34
(gdb) 
304	    for (m = 0; cf->cycle->modules[m]; m++) {
4: *module = {preconfiguration = 0x4d8572 <ngx_http_browser_add_variables>, postconfiguration = 0, create_main_conf = 0, init_main_conf = 0, create_srv_conf = 0, merge_srv_conf = 0, 
  create_loc_conf = 0x4d85ef <ngx_http_browser_create_conf>, merge_loc_conf = 0x4d8628 <ngx_http_browser_merge_conf>}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0
2: module = (ngx_http_module_t *) 0x721c60
1: m = 34
(gdb) 

Breakpoint 2, ngx_http_block (cf=0x7fffffffe130, cmd=0x712280, conf=0x766bc0) at src/http/ngx_http.c:305
305	        if (cf->cycle->modules[m]->type != NGX_HTTP_MODULE) {
4: *module = {preconfiguration = 0x4d8572 <ngx_http_browser_add_variables>, postconfiguration = 0, create_main_conf = 0, init_main_conf = 0, create_srv_conf = 0, merge_srv_conf = 0, 
  create_loc_conf = 0x4d85ef <ngx_http_browser_create_conf>, merge_loc_conf = 0x4d8628 <ngx_http_browser_merge_conf>}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0
2: module = (ngx_http_module_t *) 0x721c60
1: m = 35
(gdb) 
309	        module = cf->cycle->modules[m]->ctx;
4: *module = {preconfiguration = 0x4d8572 <ngx_http_browser_add_variables>, postconfiguration = 0, create_main_conf = 0, init_main_conf = 0, create_srv_conf = 0, merge_srv_conf = 0, 
  create_loc_conf = 0x4d85ef <ngx_http_browser_create_conf>, merge_loc_conf = 0x4d8628 <ngx_http_browser_merge_conf>}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0
2: module = (ngx_http_module_t *) 0x721c60
1: m = 35
(gdb) 
311	        if (module->postconfiguration) {
4: *module = {preconfiguration = 0, postconfiguration = 0, create_main_conf = 0, init_main_conf = 0, create_srv_conf = 0x4da032 <ngx_http_upstream_hash_create_conf>, merge_srv_conf = 0, 
  create_loc_conf = 0, merge_loc_conf = 0}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0
2: module = (ngx_http_module_t *) 0x722000
1: m = 35
(gdb) 
304	    for (m = 0; cf->cycle->modules[m]; m++) {
4: *module = {preconfiguration = 0, postconfiguration = 0, create_main_conf = 0, init_main_conf = 0, create_srv_conf = 0x4da032 <ngx_http_upstream_hash_create_conf>, merge_srv_conf = 0, 
  create_loc_conf = 0, merge_loc_conf = 0}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0
2: module = (ngx_http_module_t *) 0x722000
1: m = 35
(gdb) 

Breakpoint 2, ngx_http_block (cf=0x7fffffffe130, cmd=0x712280, conf=0x766bc0) at src/http/ngx_http.c:305
305	        if (cf->cycle->modules[m]->type != NGX_HTTP_MODULE) {
4: *module = {preconfiguration = 0, postconfiguration = 0, create_main_conf = 0, init_main_conf = 0, create_srv_conf = 0x4da032 <ngx_http_upstream_hash_create_conf>, merge_srv_conf = 0, 
  create_loc_conf = 0, merge_loc_conf = 0}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0
2: module = (ngx_http_module_t *) 0x722000
1: m = 36
(gdb) 
309	        module = cf->cycle->modules[m]->ctx;
4: *module = {preconfiguration = 0, postconfiguration = 0, create_main_conf = 0, init_main_conf = 0, create_srv_conf = 0x4da032 <ngx_http_upstream_hash_create_conf>, merge_srv_conf = 0, 
  create_loc_conf = 0, merge_loc_conf = 0}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0
2: module = (ngx_http_module_t *) 0x722000
1: m = 36
(gdb) 
311	        if (module->postconfiguration) {
4: *module = {preconfiguration = 0, postconfiguration = 0, create_main_conf = 0, init_main_conf = 0, create_srv_conf = 0, merge_srv_conf = 0, create_loc_conf = 0, merge_loc_conf = 0}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0
2: module = (ngx_http_module_t *) 0x736f80
1: m = 36
(gdb) 
304	    for (m = 0; cf->cycle->modules[m]; m++) {
4: *module = {preconfiguration = 0, postconfiguration = 0, create_main_conf = 0, init_main_conf = 0, create_srv_conf = 0, merge_srv_conf = 0, create_loc_conf = 0, merge_loc_conf = 0}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0
2: module = (ngx_http_module_t *) 0x736f80
1: m = 36
(gdb) 

Breakpoint 2, ngx_http_block (cf=0x7fffffffe130, cmd=0x712280, conf=0x766bc0) at src/http/ngx_http.c:305
305	        if (cf->cycle->modules[m]->type != NGX_HTTP_MODULE) {
4: *module = {preconfiguration = 0, postconfiguration = 0, create_main_conf = 0, init_main_conf = 0, create_srv_conf = 0, merge_srv_conf = 0, create_loc_conf = 0, merge_loc_conf = 0}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0
2: module = (ngx_http_module_t *) 0x736f80
1: m = 37
(gdb) 
309	        module = cf->cycle->modules[m]->ctx;
4: *module = {preconfiguration = 0, postconfiguration = 0, create_main_conf = 0, init_main_conf = 0, create_srv_conf = 0, merge_srv_conf = 0, create_loc_conf = 0, merge_loc_conf = 0}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0
2: module = (ngx_http_module_t *) 0x736f80
1: m = 37
(gdb) 
311	        if (module->postconfiguration) {
4: *module = {preconfiguration = 0x4daa87 <ngx_http_reqstat_add_variable>, postconfiguration = 0x4dab41 <ngx_http_reqstat_init>, 
  create_main_conf = 0x4da8ce <ngx_http_reqstat_create_main_conf>, init_main_conf = 0, create_srv_conf = 0, merge_srv_conf = 0, 
  create_loc_conf = 0x4da8f1 <ngx_http_reqstat_create_loc_conf>, merge_loc_conf = 0x4da965 <ngx_http_reqstat_merge_loc_conf>}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0
2: module = (ngx_http_module_t *) 0x722880
1: m = 37
(gdb) 
315	            if (module->postconfiguration(cf) != NGX_OK) {
4: *module = {preconfiguration = 0x4daa87 <ngx_http_reqstat_add_variable>, postconfiguration = 0x4dab41 <ngx_http_reqstat_init>, 
  create_main_conf = 0x4da8ce <ngx_http_reqstat_create_main_conf>, init_main_conf = 0, create_srv_conf = 0, merge_srv_conf = 0, 
  create_loc_conf = 0x4da8f1 <ngx_http_reqstat_create_loc_conf>, merge_loc_conf = 0x4da965 <ngx_http_reqstat_merge_loc_conf>}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0
2: module = (ngx_http_module_t *) 0x722880
1: m = 37
(gdb) 
304	    for (m = 0; cf->cycle->modules[m]; m++) {
4: *module = {preconfiguration = 0x4daa87 <ngx_http_reqstat_add_variable>, postconfiguration = 0x4dab41 <ngx_http_reqstat_init>, 
  create_main_conf = 0x4da8ce <ngx_http_reqstat_create_main_conf>, init_main_conf = 0, create_srv_conf = 0, merge_srv_conf = 0, 
  create_loc_conf = 0x4da8f1 <ngx_http_reqstat_create_loc_conf>, merge_loc_conf = 0x4da965 <ngx_http_reqstat_merge_loc_conf>}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0
2: module = (ngx_http_module_t *) 0x722880
1: m = 37
(gdb) 

Breakpoint 2, ngx_http_block (cf=0x7fffffffe130, cmd=0x712280, conf=0x766bc0) at src/http/ngx_http.c:305
305	        if (cf->cycle->modules[m]->type != NGX_HTTP_MODULE) {
4: *module = {preconfiguration = 0x4daa87 <ngx_http_reqstat_add_variable>, postconfiguration = 0x4dab41 <ngx_http_reqstat_init>, 
  create_main_conf = 0x4da8ce <ngx_http_reqstat_create_main_conf>, init_main_conf = 0, create_srv_conf = 0, merge_srv_conf = 0, 
  create_loc_conf = 0x4da8f1 <ngx_http_reqstat_create_loc_conf>, merge_loc_conf = 0x4da965 <ngx_http_reqstat_merge_loc_conf>}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0
2: module = (ngx_http_module_t *) 0x722880
1: m = 38
(gdb) 
309	        module = cf->cycle->modules[m]->ctx;
4: *module = {preconfiguration = 0x4daa87 <ngx_http_reqstat_add_variable>, postconfiguration = 0x4dab41 <ngx_http_reqstat_init>, 
  create_main_conf = 0x4da8ce <ngx_http_reqstat_create_main_conf>, init_main_conf = 0, create_srv_conf = 0, merge_srv_conf = 0, 
  create_loc_conf = 0x4da8f1 <ngx_http_reqstat_create_loc_conf>, merge_loc_conf = 0x4da965 <ngx_http_reqstat_merge_loc_conf>}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0
2: module = (ngx_http_module_t *) 0x722880
1: m = 38
(gdb) 
311	        if (module->postconfiguration) {
4: *module = {preconfiguration = 0, postconfiguration = 0, create_main_conf = 0, init_main_conf = 0, create_srv_conf = 0, merge_srv_conf = 0, create_loc_conf = 0, merge_loc_conf = 0}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0
2: module = (ngx_http_module_t *) 0x736fe0
1: m = 38
(gdb) 
304	    for (m = 0; cf->cycle->modules[m]; m++) {
4: *module = {preconfiguration = 0, postconfiguration = 0, create_main_conf = 0, init_main_conf = 0, create_srv_conf = 0, merge_srv_conf = 0, create_loc_conf = 0, merge_loc_conf = 0}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0
2: module = (ngx_http_module_t *) 0x736fe0
1: m = 38
(gdb) 

Breakpoint 2, ngx_http_block (cf=0x7fffffffe130, cmd=0x712280, conf=0x766bc0) at src/http/ngx_http.c:305
305	        if (cf->cycle->modules[m]->type != NGX_HTTP_MODULE) {
4: *module = {preconfiguration = 0, postconfiguration = 0, create_main_conf = 0, init_main_conf = 0, create_srv_conf = 0, merge_srv_conf = 0, create_loc_conf = 0, merge_loc_conf = 0}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0
2: module = (ngx_http_module_t *) 0x736fe0
1: m = 39
(gdb) 
309	        module = cf->cycle->modules[m]->ctx;
4: *module = {preconfiguration = 0, postconfiguration = 0, create_main_conf = 0, init_main_conf = 0, create_srv_conf = 0, merge_srv_conf = 0, create_loc_conf = 0, merge_loc_conf = 0}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0
2: module = (ngx_http_module_t *) 0x736fe0
1: m = 39
(gdb) 
311	        if (module->postconfiguration) {
4: *module = {preconfiguration = 0, postconfiguration = 0, create_main_conf = 0, init_main_conf = 0, create_srv_conf = 0x4defa8 <ngx_http_upstream_keepalive_create_conf>, 
  merge_srv_conf = 0, create_loc_conf = 0, merge_loc_conf = 0}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0
2: module = (ngx_http_module_t *) 0x722b80
1: m = 39
(gdb) 
304	    for (m = 0; cf->cycle->modules[m]; m++) {
4: *module = {preconfiguration = 0, postconfiguration = 0, create_main_conf = 0, init_main_conf = 0, create_srv_conf = 0x4defa8 <ngx_http_upstream_keepalive_create_conf>, 
  merge_srv_conf = 0, create_loc_conf = 0, merge_loc_conf = 0}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0
2: module = (ngx_http_module_t *) 0x722b80
1: m = 39
(gdb) 

Breakpoint 2, ngx_http_block (cf=0x7fffffffe130, cmd=0x712280, conf=0x766bc0) at src/http/ngx_http.c:305
305	        if (cf->cycle->modules[m]->type != NGX_HTTP_MODULE) {
4: *module = {preconfiguration = 0, postconfiguration = 0, create_main_conf = 0, init_main_conf = 0, create_srv_conf = 0x4defa8 <ngx_http_upstream_keepalive_create_conf>, 
  merge_srv_conf = 0, create_loc_conf = 0, merge_loc_conf = 0}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0
2: module = (ngx_http_module_t *) 0x722b80
1: m = 40
(gdb) 
309	        module = cf->cycle->modules[m]->ctx;
4: *module = {preconfiguration = 0, postconfiguration = 0, create_main_conf = 0, init_main_conf = 0, create_srv_conf = 0x4defa8 <ngx_http_upstream_keepalive_create_conf>, 
  merge_srv_conf = 0, create_loc_conf = 0, merge_loc_conf = 0}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0
2: module = (ngx_http_module_t *) 0x722b80
1: m = 40
(gdb) 
311	        if (module->postconfiguration) {
4: *module = {preconfiguration = 0, postconfiguration = 0, create_main_conf = 0, init_main_conf = 0, create_srv_conf = 0, merge_srv_conf = 0, create_loc_conf = 0, merge_loc_conf = 0}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0
2: module = (ngx_http_module_t *) 0x737020
1: m = 40
(gdb) 
304	    for (m = 0; cf->cycle->modules[m]; m++) {
4: *module = {preconfiguration = 0, postconfiguration = 0, create_main_conf = 0, init_main_conf = 0, create_srv_conf = 0, merge_srv_conf = 0, create_loc_conf = 0, merge_loc_conf = 0}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0
2: module = (ngx_http_module_t *) 0x737020
1: m = 40
(gdb) 

Breakpoint 2, ngx_http_block (cf=0x7fffffffe130, cmd=0x712280, conf=0x766bc0) at src/http/ngx_http.c:305
305	        if (cf->cycle->modules[m]->type != NGX_HTTP_MODULE) {
4: *module = {preconfiguration = 0, postconfiguration = 0, create_main_conf = 0, init_main_conf = 0, create_srv_conf = 0, merge_srv_conf = 0, create_loc_conf = 0, merge_loc_conf = 0}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0
2: module = (ngx_http_module_t *) 0x737020
1: m = 41
(gdb) 
309	        module = cf->cycle->modules[m]->ctx;
4: *module = {preconfiguration = 0, postconfiguration = 0, create_main_conf = 0, init_main_conf = 0, create_srv_conf = 0, merge_srv_conf = 0, create_loc_conf = 0, merge_loc_conf = 0}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0
2: module = (ngx_http_module_t *) 0x737020
1: m = 41
(gdb) 
311	        if (module->postconfiguration) {
4: *module = {preconfiguration = 0x4dfcf9 <ngx_http_stub_status_add_variables>, postconfiguration = 0, create_main_conf = 0, init_main_conf = 0, create_srv_conf = 0, merge_srv_conf = 0, 
  create_loc_conf = 0, merge_loc_conf = 0}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0
2: module = (ngx_http_module_t *) 0x722e80
1: m = 41
(gdb) 
304	    for (m = 0; cf->cycle->modules[m]; m++) {
4: *module = {preconfiguration = 0x4dfcf9 <ngx_http_stub_status_add_variables>, postconfiguration = 0, create_main_conf = 0, init_main_conf = 0, create_srv_conf = 0, merge_srv_conf = 0, 
  create_loc_conf = 0, merge_loc_conf = 0}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0
2: module = (ngx_http_module_t *) 0x722e80
1: m = 41
(gdb) 

Breakpoint 2, ngx_http_block (cf=0x7fffffffe130, cmd=0x712280, conf=0x766bc0) at src/http/ngx_http.c:305
305	        if (cf->cycle->modules[m]->type != NGX_HTTP_MODULE) {
4: *module = {preconfiguration = 0x4dfcf9 <ngx_http_stub_status_add_variables>, postconfiguration = 0, create_main_conf = 0, init_main_conf = 0, create_srv_conf = 0, merge_srv_conf = 0, 
  create_loc_conf = 0, merge_loc_conf = 0}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0
2: module = (ngx_http_module_t *) 0x722e80
1: m = 42
(gdb) 
309	        module = cf->cycle->modules[m]->ctx;
4: *module = {preconfiguration = 0x4dfcf9 <ngx_http_stub_status_add_variables>, postconfiguration = 0, create_main_conf = 0, init_main_conf = 0, create_srv_conf = 0, merge_srv_conf = 0, 
  create_loc_conf = 0, merge_loc_conf = 0}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0
2: module = (ngx_http_module_t *) 0x722e80
1: m = 42
(gdb) 
311	        if (module->postconfiguration) {
4: *module = {preconfiguration = 0, postconfiguration = 0, create_main_conf = 0x4e619d <ngx_http_upstream_check_create_main_conf>, 
  init_main_conf = 0x4e66ce <ngx_http_upstream_check_init_main_conf>, create_srv_conf = 0x4e67d9 <ngx_http_upstream_check_create_srv_conf>, merge_srv_conf = 0, 
  create_loc_conf = 0x4e689e <ngx_http_upstream_check_create_loc_conf>, merge_loc_conf = 0x4e6b53 <ngx_http_upstream_check_merge_loc_conf>}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0
2: module = (ngx_http_module_t *) 0x723360
1: m = 42
(gdb) 
304	    for (m = 0; cf->cycle->modules[m]; m++) {
4: *module = {preconfiguration = 0, postconfiguration = 0, create_main_conf = 0x4e619d <ngx_http_upstream_check_create_main_conf>, 
  init_main_conf = 0x4e66ce <ngx_http_upstream_check_init_main_conf>, create_srv_conf = 0x4e67d9 <ngx_http_upstream_check_create_srv_conf>, merge_srv_conf = 0, 
  create_loc_conf = 0x4e689e <ngx_http_upstream_check_create_loc_conf>, merge_loc_conf = 0x4e6b53 <ngx_http_upstream_check_merge_loc_conf>}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0
2: module = (ngx_http_module_t *) 0x723360
1: m = 42
(gdb) 

Breakpoint 2, ngx_http_block (cf=0x7fffffffe130, cmd=0x712280, conf=0x766bc0) at src/http/ngx_http.c:305
305	        if (cf->cycle->modules[m]->type != NGX_HTTP_MODULE) {
4: *module = {preconfiguration = 0, postconfiguration = 0, create_main_conf = 0x4e619d <ngx_http_upstream_check_create_main_conf>, 
  init_main_conf = 0x4e66ce <ngx_http_upstream_check_init_main_conf>, create_srv_conf = 0x4e67d9 <ngx_http_upstream_check_create_srv_conf>, merge_srv_conf = 0, 
  create_loc_conf = 0x4e689e <ngx_http_upstream_check_create_loc_conf>, merge_loc_conf = 0x4e6b53 <ngx_http_upstream_check_merge_loc_conf>}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0
2: module = (ngx_http_module_t *) 0x723360
1: m = 43
(gdb) 
309	        module = cf->cycle->modules[m]->ctx;
4: *module = {preconfiguration = 0, postconfiguration = 0, create_main_conf = 0x4e619d <ngx_http_upstream_check_create_main_conf>, 
  init_main_conf = 0x4e66ce <ngx_http_upstream_check_init_main_conf>, create_srv_conf = 0x4e67d9 <ngx_http_upstream_check_create_srv_conf>, merge_srv_conf = 0, 
  create_loc_conf = 0x4e689e <ngx_http_upstream_check_create_loc_conf>, merge_loc_conf = 0x4e6b53 <ngx_http_upstream_check_merge_loc_conf>}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0
2: module = (ngx_http_module_t *) 0x723360
1: m = 43
(gdb) 
311	        if (module->postconfiguration) {
4: *module = {preconfiguration = 0, postconfiguration = 0x4e9723 <ngx_http_session_sticky_init>, create_main_conf = 0, init_main_conf = 0, 
  create_srv_conf = 0x4e960f <ngx_http_upstream_session_sticky_create_srv_conf>, merge_srv_conf = 0, create_loc_conf = 0x4e969d <ngx_http_session_sticky_create_loc_conf>, 
  merge_loc_conf = 0x4e96e1 <ngx_http_session_sticky_merge_loc_conf>}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0
2: module = (ngx_http_module_t *) 0x723b00
1: m = 43
(gdb) 
315	            if (module->postconfiguration(cf) != NGX_OK) {
4: *module = {preconfiguration = 0, postconfiguration = 0x4e9723 <ngx_http_session_sticky_init>, create_main_conf = 0, init_main_conf = 0, 
  create_srv_conf = 0x4e960f <ngx_http_upstream_session_sticky_create_srv_conf>, merge_srv_conf = 0, create_loc_conf = 0x4e969d <ngx_http_session_sticky_create_loc_conf>, 
  merge_loc_conf = 0x4e96e1 <ngx_http_session_sticky_merge_loc_conf>}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0
2: module = (ngx_http_module_t *) 0x723b00
1: m = 43
(gdb) 
304	    for (m = 0; cf->cycle->modules[m]; m++) {
4: *module = {preconfiguration = 0, postconfiguration = 0x4e9723 <ngx_http_session_sticky_init>, create_main_conf = 0, init_main_conf = 0, 
  create_srv_conf = 0x4e960f <ngx_http_upstream_session_sticky_create_srv_conf>, merge_srv_conf = 0, create_loc_conf = 0x4e969d <ngx_http_session_sticky_create_loc_conf>, 
  merge_loc_conf = 0x4e96e1 <ngx_http_session_sticky_merge_loc_conf>}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0x4e8703 <ngx_http_session_sticky_header_filter>
2: module = (ngx_http_module_t *) 0x723b00
1: m = 43
(gdb) n

Breakpoint 2, ngx_http_block (cf=0x7fffffffe130, cmd=0x712280, conf=0x766bc0) at src/http/ngx_http.c:305
305	        if (cf->cycle->modules[m]->type != NGX_HTTP_MODULE) {
4: *module = {preconfiguration = 0, postconfiguration = 0x4e9723 <ngx_http_session_sticky_init>, create_main_conf = 0, init_main_conf = 0, 
  create_srv_conf = 0x4e960f <ngx_http_upstream_session_sticky_create_srv_conf>, merge_srv_conf = 0, create_loc_conf = 0x4e969d <ngx_http_session_sticky_create_loc_conf>, 
  merge_loc_conf = 0x4e96e1 <ngx_http_session_sticky_merge_loc_conf>}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0x4e8703 <ngx_http_session_sticky_header_filter>
2: module = (ngx_http_module_t *) 0x723b00
1: m = 44
(gdb) 
309	        module = cf->cycle->modules[m]->ctx;
4: *module = {preconfiguration = 0, postconfiguration = 0x4e9723 <ngx_http_session_sticky_init>, create_main_conf = 0, init_main_conf = 0, 
  create_srv_conf = 0x4e960f <ngx_http_upstream_session_sticky_create_srv_conf>, merge_srv_conf = 0, create_loc_conf = 0x4e969d <ngx_http_session_sticky_create_loc_conf>, 
  merge_loc_conf = 0x4e96e1 <ngx_http_session_sticky_merge_loc_conf>}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0x4e8703 <ngx_http_session_sticky_header_filter>
2: module = (ngx_http_module_t *) 0x723b00
1: m = 44
(gdb) 
311	        if (module->postconfiguration) {
4: *module = {preconfiguration = 0, postconfiguration = 0x49c1f2 <ngx_http_write_filter_init>, create_main_conf = 0, init_main_conf = 0, create_srv_conf = 0, merge_srv_conf = 0, 
  create_loc_conf = 0, merge_loc_conf = 0}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0x4e8703 <ngx_http_session_sticky_header_filter>
2: module = (ngx_http_module_t *) 0x718040
1: m = 44
(gdb) 
315	            if (module->postconfiguration(cf) != NGX_OK) {
4: *module = {preconfiguration = 0, postconfiguration = 0x49c1f2 <ngx_http_write_filter_init>, create_main_conf = 0, init_main_conf = 0, create_srv_conf = 0, merge_srv_conf = 0, 
  create_loc_conf = 0, merge_loc_conf = 0}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0x4e8703 <ngx_http_session_sticky_header_filter>
2: module = (ngx_http_module_t *) 0x718040
1: m = 44
(gdb) 
304	    for (m = 0; cf->cycle->modules[m]; m++) {
4: *module = {preconfiguration = 0, postconfiguration = 0x49c1f2 <ngx_http_write_filter_init>, create_main_conf = 0, init_main_conf = 0, create_srv_conf = 0, merge_srv_conf = 0, 
  create_loc_conf = 0, merge_loc_conf = 0}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0x4e8703 <ngx_http_session_sticky_header_filter>
2: module = (ngx_http_module_t *) 0x718040
1: m = 44
(gdb) 

Breakpoint 2, ngx_http_block (cf=0x7fffffffe130, cmd=0x712280, conf=0x766bc0) at src/http/ngx_http.c:305
305	        if (cf->cycle->modules[m]->type != NGX_HTTP_MODULE) {
4: *module = {preconfiguration = 0, postconfiguration = 0x49c1f2 <ngx_http_write_filter_init>, create_main_conf = 0, init_main_conf = 0, create_srv_conf = 0, merge_srv_conf = 0, 
  create_loc_conf = 0, merge_loc_conf = 0}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0x4e8703 <ngx_http_session_sticky_header_filter>
2: module = (ngx_http_module_t *) 0x718040
1: m = 45
(gdb) 
309	        module = cf->cycle->modules[m]->ctx;
4: *module = {preconfiguration = 0, postconfiguration = 0x49c1f2 <ngx_http_write_filter_init>, create_main_conf = 0, init_main_conf = 0, create_srv_conf = 0, merge_srv_conf = 0, 
  create_loc_conf = 0, merge_loc_conf = 0}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0x4e8703 <ngx_http_session_sticky_header_filter>
2: module = (ngx_http_module_t *) 0x718040
1: m = 45
(gdb) 
311	        if (module->postconfiguration) {
4: *module = {preconfiguration = 0, postconfiguration = 0x49d62c <ngx_http_header_filter_init>, create_main_conf = 0, init_main_conf = 0, create_srv_conf = 0, merge_srv_conf = 0, 
  create_loc_conf = 0, merge_loc_conf = 0}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0x4e8703 <ngx_http_session_sticky_header_filter>
2: module = (ngx_http_module_t *) 0x718160
1: m = 45
(gdb) 
315	            if (module->postconfiguration(cf) != NGX_OK) {
4: *module = {preconfiguration = 0, postconfiguration = 0x49d62c <ngx_http_header_filter_init>, create_main_conf = 0, init_main_conf = 0, create_srv_conf = 0, merge_srv_conf = 0, 
  create_loc_conf = 0, merge_loc_conf = 0}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0x4e8703 <ngx_http_session_sticky_header_filter>
2: module = (ngx_http_module_t *) 0x718160
1: m = 45
(gdb) 
304	    for (m = 0; cf->cycle->modules[m]; m++) {
4: *module = {preconfiguration = 0, postconfiguration = 0x49d62c <ngx_http_header_filter_init>, create_main_conf = 0, init_main_conf = 0, create_srv_conf = 0, merge_srv_conf = 0, 
  create_loc_conf = 0, merge_loc_conf = 0}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0x49c20c <ngx_http_header_filter>
2: module = (ngx_http_module_t *) 0x718160
1: m = 45
(gdb) n

Breakpoint 2, ngx_http_block (cf=0x7fffffffe130, cmd=0x712280, conf=0x766bc0) at src/http/ngx_http.c:305
305	        if (cf->cycle->modules[m]->type != NGX_HTTP_MODULE) {
4: *module = {preconfiguration = 0, postconfiguration = 0x49d62c <ngx_http_header_filter_init>, create_main_conf = 0, init_main_conf = 0, create_srv_conf = 0, merge_srv_conf = 0, 
  create_loc_conf = 0, merge_loc_conf = 0}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0x49c20c <ngx_http_header_filter>
2: module = (ngx_http_module_t *) 0x718160
1: m = 46
(gdb) n
309	        module = cf->cycle->modules[m]->ctx;
4: *module = {preconfiguration = 0, postconfiguration = 0x49d62c <ngx_http_header_filter_init>, create_main_conf = 0, init_main_conf = 0, create_srv_conf = 0, merge_srv_conf = 0, 
  create_loc_conf = 0, merge_loc_conf = 0}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0x49c20c <ngx_http_header_filter>
2: module = (ngx_http_module_t *) 0x718160
1: m = 46
(gdb) 
311	        if (module->postconfiguration) {
4: *module = {preconfiguration = 0, postconfiguration = 0x49e0c3 <ngx_http_chunked_filter_init>, create_main_conf = 0, init_main_conf = 0, create_srv_conf = 0, merge_srv_conf = 0, 
  create_loc_conf = 0, merge_loc_conf = 0}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0x49c20c <ngx_http_header_filter>
2: module = (ngx_http_module_t *) 0x718760
1: m = 46
(gdb) 
315	            if (module->postconfiguration(cf) != NGX_OK) {
4: *module = {preconfiguration = 0, postconfiguration = 0x49e0c3 <ngx_http_chunked_filter_init>, create_main_conf = 0, init_main_conf = 0, create_srv_conf = 0, merge_srv_conf = 0, 
  create_loc_conf = 0, merge_loc_conf = 0}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0x49c20c <ngx_http_header_filter>
2: module = (ngx_http_module_t *) 0x718760
1: m = 46
(gdb) 
304	    for (m = 0; cf->cycle->modules[m]; m++) {
4: *module = {preconfiguration = 0, postconfiguration = 0x49e0c3 <ngx_http_chunked_filter_init>, create_main_conf = 0, init_main_conf = 0, create_srv_conf = 0, merge_srv_conf = 0, 
  create_loc_conf = 0, merge_loc_conf = 0}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0x49d648 <ngx_http_chunked_header_filter>
2: module = (ngx_http_module_t *) 0x718760
1: m = 46
(gdb) n

Breakpoint 2, ngx_http_block (cf=0x7fffffffe130, cmd=0x712280, conf=0x766bc0) at src/http/ngx_http.c:305
305	        if (cf->cycle->modules[m]->type != NGX_HTTP_MODULE) {
4: *module = {preconfiguration = 0, postconfiguration = 0x49e0c3 <ngx_http_chunked_filter_init>, create_main_conf = 0, init_main_conf = 0, create_srv_conf = 0, merge_srv_conf = 0, 
  create_loc_conf = 0, merge_loc_conf = 0}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0x49d648 <ngx_http_chunked_header_filter>
2: module = (ngx_http_module_t *) 0x718760
1: m = 47
(gdb) 
309	        module = cf->cycle->modules[m]->ctx;
4: *module = {preconfiguration = 0, postconfiguration = 0x49e0c3 <ngx_http_chunked_filter_init>, create_main_conf = 0, init_main_conf = 0, create_srv_conf = 0, merge_srv_conf = 0, 
  create_loc_conf = 0, merge_loc_conf = 0}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0x49d648 <ngx_http_chunked_header_filter>
2: module = (ngx_http_module_t *) 0x718760
1: m = 47
(gdb) 
311	        if (module->postconfiguration) {
4: *module = {preconfiguration = 0, postconfiguration = 0x49fd10 <ngx_http_range_header_filter_init>, create_main_conf = 0, init_main_conf = 0, create_srv_conf = 0, merge_srv_conf = 0, 
  create_loc_conf = 0, merge_loc_conf = 0}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0x49d648 <ngx_http_chunked_header_filter>
2: module = (ngx_http_module_t *) 0x718880
1: m = 47
(gdb) 
315	            if (module->postconfiguration(cf) != NGX_OK) {
4: *module = {preconfiguration = 0, postconfiguration = 0x49fd10 <ngx_http_range_header_filter_init>, create_main_conf = 0, init_main_conf = 0, create_srv_conf = 0, merge_srv_conf = 0, 
  create_loc_conf = 0, merge_loc_conf = 0}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0x49d648 <ngx_http_chunked_header_filter>
2: module = (ngx_http_module_t *) 0x718880
1: m = 47
(gdb) 
304	    for (m = 0; cf->cycle->modules[m]; m++) {
4: *module = {preconfiguration = 0, postconfiguration = 0x49fd10 <ngx_http_range_header_filter_init>, create_main_conf = 0, init_main_conf = 0, create_srv_conf = 0, merge_srv_conf = 0, 
  create_loc_conf = 0, merge_loc_conf = 0}
3: ngx_http_top_header_filter = (ngx_http_output_header_filter_pt) 0x49e18a <ngx_http_range_header_filter>
2: module = (ngx_http_module_t *) 0x718880
1: m = 47
(gdb) q

感謝各位的閱讀,以上就是“GDB調(diào)試nginx運行流程舉例分析”的內(nèi)容了,經(jīng)過本文的學習后,相信大家對GDB調(diào)試nginx運行流程舉例分析這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關(guān)知識點的文章,歡迎關(guān)注!

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI