配置、error日志和请求上下文

本文深入探讨了HTTP配置项的使用场景及实现方法,包括创建数据结构存储配置参数、设定限制条件与回调方法、合并配置项等关键步骤,并提供了解析流程及错误日志用法的指导。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

http配置项的使用场景

http{
    test_str main;
    server{
        listen 80;
        test_str server80;

        location /url1{
            mytest;
            test_str loc1;
        }
        location /url2{
            mytest;
            test_str loc2;
        }
    }
    server {
        listen 8080;
        test_str server8080;
        location /url3{
            mytest;
            test_str loc3;
        }
    }
}

怎样使用http配置

  • 创建数据结构存储配置项对应的参数
  • 设定配置项在nginx.conf中出现时的限制条件与回调方法
  • 实现2中的回调方法,或者使用nginx框架预设的14个回调方法
  • 合并不同级别的配置块中出现的同名配置

分配用于保存配置参数的数据结构

创建结构体,包含感兴趣的参数,以14种预设配置项的解析为例
这里写图片描述
使用回调函数将自定义的结构体传递给nginx
这里写图片描述

设定配置项的解析方式

ngx_command_t

使用14种预设方法解析配置项

这里写图片描述
这里写图片描述
这里写图片描述

ngx_conf_set_flag_slot

这里写图片描述

ngx_conf_set_str_slot

这里写图片描述

ngx_conf_set_str_array_slot

这里写图片描述

ngx_conf_set_keyval_slot

这里写图片描述

其他类似

自定义配置项处理方法

  • 首先定义配置项处理方法
    static char* ngx_conf_set_myconfig(ngx_conf_t *cf,ngx_command_t *cmd,void *conf)
  • 接下来定义ngx_command_t 结构体

合并配置项

这里写图片描述

http配置模型

通过ngx_http_conf_ctx_t结构保存了所有http模块的配置数据结构的入口。

解析http配置的流程

这里写图片描述

http匹配模型的内存布局

这里写图片描述

如何合并配置项

error日志的用法

请求的上下文

上下文与全异步Web服务器的关系

需要局部来维护

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值