小编hel*_*yan的帖子

Nginx gzip过滤器无法使用我的自定义处理程序

我写了一个非常简单的nginx处理程序,只输出一些文本(大小100B到10KB).

代码适用于nginx(版本1.0.6)

但我发现gzip过滤器无法与处理程序一起使用.

当我在nginx.conf(在http部分下)打开gzip时,gzip使用静态html文件工作.

但是,处理程序的响应不是用gzip压缩的.

经过大量的搜索工作,我仍然找不到答案.

任何意见 ?非常感谢.:-)

//my code :
static ngx_int_t ngx_http_test_handler(ngx_http_request_t *r){

    ngx_chain_t out;
    ngx_buf_t *b;

    b = ngx_pcalloc(r->pool, sizeof(ngx_buf_t));

    ......
    //writing text to buffer
    ......
    r->headers_out.status = NGX_HTTP_OK;
    r->headers_out.content_length_n = len;
    r->headers_out.content_type.len = sizeof("text/html")-1;
    r->headers_out.content_type.data = (u_char *) "text/html";

    out.buf = b;
    out.next = NULL;
    return ngx_http_output_filter(r, &out);
}
Run Code Online (Sandbox Code Playgroud)

gzip module nginx handler

6
推荐指数
1
解决办法
863
查看次数

标签 统计

gzip ×1

handler ×1

module ×1

nginx ×1