ngx_http_init_connection; 对于mail模块,其绑定的handler为ngx_mail_init_connection(); 对于stream模块 其绑定的handler为ngx_stream_init_connection()ls->handler(c);//ngx_http_init_connectionif(ngx_event_flags &NGX_USE_KQUEUE_EVENT) { ev->available--; } }while(ev->available);//一次性读取所有...
因为ngx_listening_t存储监听有关的信息,ngx_connection_t存储连接有关的信息和读写事件,而ngx_cycle_t这个结构体几乎就是核心结构体,在nginx初始化时这个结构体存储了许多东西,而且它有个初始化的函数:ngx_init_cycle,这个函数的代码有700多行。可见这个结构体有多种要。于是就花了半天来找这几个结构体里面成员...
#include <ngx_stream.h>// 创建ctx数组,用于存储模块的ctx数据 // 调用handler,处理tcp数据,收发等等 //static void ngx_stream_init_session(ngx_connection_t *c);// 记录日志,执行所有的log模块,不关心返回值 static void ngx_stream_log_session(ngx_stream_session_t *s);/...
#include <ngx_stream_ssl_module.h> #endif// 类似ngx_http_request_t,表示tcp通信的会话 // 存储有tcp处理里需要的数据,例如connection、ctx等 typedef struct ngx_stream_session_s ngx_stream_session_t;// nginx 1.11.3新增变量支持 #include <ngx_stream_variables.h> ...
static ngx_int_t ngx_stream_add_ports(ngx_conf_t *cf, ngx_array_t *ports, ngx_stream_listen_t *listen); // 对已经整理好的监听端口数组排序 // 调用ngx_create_listening添加到cycle的监听端口数组,只是添加,没有其他动作 // 设置有连接发生时的回调函数ngx_stream_init_connection ...
610staticngx_int_t611ngx_event_process_init(ngx_cycle_t*cycle)612{...776777ls=cycle->listening.elts;778for(i=0;i<cycle->listening.nelts;i++){786c=ngx_get_connection(ls[i].fd,cycle->log);795c->listening=&ls[i];796ls[i].connection=c;865rev->handler=(c->type==SOCK_STREAM)?ngx...
// 例如ngx_http_init_connection,ngx_stream_init_connection void ngx_event_accept(ngx_event_t *ev); #if !(NGX_WIN32) // 1.10新增函数,接受udp连接的handler void ngx_event_recvmsg(ngx_event_t *ev); void ngx_udp_rbtree_insert_value(ngx_rbtree_node_t *temp, ...
nginx编译ngx_stream_module 最近公司突然提出要用https了 原因是对苹果连接的接口只允许https通过了,哎无处不坑爹(仔细想下也是应该的毕竟安全重要)首先我们要重新编译nginx使其能支持ssl:这是我编译的nginx的参数:作为参考--prefix=/opt/nginx/ --user=nginx--with-http_ssl_module --with-http_gunzip_module ...
shm初始化是在ngx_http_dyups_init_main_conf函数中实现的,同时设置了read_mesg的超时时间,并且指定了大小。 static char *ngx_http_dyups_init_main_conf(ngx_conf_t *cf, void *conf) { ... if (dmcf->read_msg_timeout == NGX_CONF_UNSET_MSEC) { ...
shm初始化是在ngx_http_dyups_init_main_conf函数中实现的,同时设置了read_mesg的超时时间,并且指定了大小。 static char *ngx_http_dyups_init_main_conf(ngx_conf_t *cf, void *conf) { ... if (dmcf->read_msg_timeout == NGX_CONF_UNSET_MSEC) { ...