【发布时间】:2011-12-08 07:19:01
【问题描述】:
我写了一个非常简单的 nginx 处理程序,只输出一些文本(大小 100B 到 10KB)。
代码在 nginx(ver 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);
}
【问题讨论】: