开发者

So nginx always walk through the same set of filters for each request?

开发者 https://www.devze.com 2023-03-13 09:41 出处:网络
&ngx_http_write_filter_module, &ngx_http_header_filter_module, &ngx_http_chunked_filter_module,
&ngx_http_write_filter_module,
&ngx_http_header_filter_module,
&ngx_http_chunked_filter_module,
&ngx_http_range_header_filter_module,
&ngx_http_gzip_filter_module,
&ngx_http_postpone_filter_module,
&ngx_http_ssi_filter_module,
&ngx_http_charset_filter_module,
&ngx_http_userid_filter_module,
&ngx_http_headers_filter_module,
&ngx_http_copy_filter_module,
&ngx_http_range_body_filter_module,
&ngx_http_not_modified_filter_module,

I know that nginx modules are compiled into nginx binary,n开发者_Python百科ot dynamic linked.

Does that mean that all the above 13 filters will execute on each request no matter what?


Yes. That is true. For example, following is the init function from gzip module. But don't worry about it much because most filters will bail out early if they are not applicable.

static ngx_int_t ngx_http_gzip_filter_init(ngx_conf_t *cf)
{
    ngx_http_next_header_filter = ngx_http_top_header_filter;
    ngx_http_top_header_filter = ngx_http_gzip_header_filter;

    ngx_http_next_body_filter = ngx_http_top_body_filter;
    ngx_http_top_body_filter = ngx_http_gzip_body_filter;

    return NGX_OK;
}
0

精彩评论

暂无评论...
验证码 换一张
取 消

关注公众号