我写了一个非常简单的nginx处理程序,只输出一些文本(大小100B到10KB)。Nginx的gzip过滤器不能与我的自定义处理程序
的代码工作正常nginx的(版本1.0.6)
,但我发现gzip的过滤器不能与处理工作。
当我打开nginx.conf中的gzip(在http部分下)时,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);
}