指令参数个数:NGX_CONF_NOARGS, NGX_CONF_TAKE1, NGX_CONF_TAKE2 ... NGX_CONF_TAKE12 ... NGX_CONF_1MORE ... 指令可存在上下文:NGX_MAIN_CONF, NGX_EVENT_CONF, NGX_HTTP_LOC_CONF ... conf 主要由 NGX_HTTP_MODULE 类型模块使用,表示指令在当前配置项的大致位置,取值 NGX_HTTP_MAIN_CONF_OFFSET...
NGX_EVENT_CONF|NGX_CONF_TAKE1, ngx_event_debug_connection,0,0, NULL }, ngx_null_command };//ngx_event_core_module模块则仅实现了create_conf方法和init_conf方法,这是因为它并不真正负责TCP网络事件的驱动,//所以不会实现ngx_event_actions_t中的方法ngx_event_module_t ngx_event_core_module_ctx ...
2、参数数目:在src/core/ngx_conf_file.h中有如下一些宏: #define NGX_CONF_NOARGS 0x00000001 //表示该指令没有参数 #define NGX_CONF_TAKE1 0x00000002 //有一个参数 #define NGX_CONF_TAKE2 0x00000004 ... ... #define NGX_CONF_TAKE7 0x00000080 //7个参数 #define NGX_CONF_MAX_ARGS 8 //...
ngx_str_t name ; /*命令类型如:NGX_HTTP_MAIN_CONF,NGX_HTTP_SRV_CONF,这里还要指定参数可以接受的参数个数或类型如NGX_CONF_TAKE1代表可接受一个参数, *假如我们配置:NGX_HTTP_MAIN_CONF|NGX_HTTP_SRV_CONF|NGX_CONF_TAKE1表示该命令既可以出现在main_conf中也可以出现在srv_conf中,并且必须接受一个参数...
1. 指令类型:NGX_CONF_FLAGS 表⽰指令为布尔类型。NGX_CONF_BLOCK表⽰为复杂指针类型 2. 指令参数个数:NGX_CONF_NOARGS, NGX_CONF_TAKE1, NGX_CONF_TAKE2 ... NGX_CONF_TAKE12 ...NGX_CONF_1MORE ...3. 指令可存在上下⽂:NGX_MAIN_CONF, NGX_EVENT_CONF, NGX_HTTP_LOC_CONF ...conf ...
static ngx_command_t ngx_http_auth_basic_commands[] = { { ngx_string("auth_basic"), NGX_HTTP_MAIN_CONF|NGX_HTTP_SRV_CONF|NGX_HTTP_LOC_CONF|NGX_HTTP_LMT_CONF |NGX_CONF_TAKE1, ngx_http_set_complex_value_slot, NGX_HTTP_LOC_CONF_OFFSET, offsetof(ngx_http_auth_basic_loc_conf_t, ...
|NGX_CONF_TAKE1, ngx_http_auth_basic_user_file, NGX_HTTP_LOC_CONF_OFFSET, offsetof(ngx_http_auth_basic_loc_conf_t, user_file), NULL }, ngx_null_command }; static ngx_http_module_t ngx_http_auth_basic_module_ctx = { NULL, /* preconfiguration */ ...
_TAKE2|NGX_CONF_TAKE3|NGX_CONF_TAKE4) // 命令携带1个、2个、3个或4个参数 #define NGX_CONF_ARGS_NUMBER 0x000000ff // 命令 #define NGX_CONF_BLOCK 0x00000100 // 块域,后面跟 {…},比如 server {...} #define NGX_CONF_FLAG 0x00000200 // 命令接受“on|off”参数 #define NGX_CONF_...
NGX_EVENT_CONF|NGX_CONF_TAKE1, ngx_conf_set_num_slot, 0, offsetof(ngx_epoll_conf_t, aio_requests), NULL}, ngx_null_command }; 在ngx_epoll_module 模块的定义中,定义了该模块的上下文结构ngx_epoll_module_ctx,该上下文结构是基于事件模块的通用接口ngx_event_module_t 结构来定义的。该上下文结构...
static char *ngx_http_set_status(ngx_conf_t *cf, ngx_command_t *cmd, void *conf); static ngx_command_t ngx_http_status_commands[] = { { ngx_string("stub_status"), NGX_HTTP_SRV_CONF|NGX_HTTP_LOC_CONF|NGX_CONF_FLAG, ngx_http_set_status, ...