zero size buf for static content

Igor Sysoev is at rambler-co.ru
Sun Feb 4 21:49:21 MSK 2007


On Fri, 2 Feb 2007, Alexander Azarov wrote:

> Происходит zero size buf при запросе статического PDF файла "напрямую" из
> браузера, IE6 и IE7, к сожалению, в списке пострадавших.
>
> Nginx + ядро:
>
> 2007/02/02 17:52:35 [notice] 17712#0: using the "epoll" event method
> 2007/02/02 17:52:35 [notice] 17712#0: nginx/0.5.10
> 2007/02/02 17:52:35 [notice] 17712#0: built by gcc 4.1.2 20061028
> (prerelease) (Debian 4.1.1-19)
> 2007/02/02 17:52:35 [notice] 17712#0: OS: Linux 2.6.18-3-vserver-amd64
>
> Ошибка в логе:
>
> 2007/02/02 17:54:21 [alert] 17715#0: *8157 zero size buf in output t:0 r:0
> f:1 0000000000000000 0000000000000000-0000000000000000 00000000007B99C0 0-0
> while sending response to client, client: 62.117.85.87, server:
> www.osinka.ru, URL: "/Sewing/Books/pdf/LineJaqe.pdf", host: "www.osinka.ru"

Патч.


Игорь Сысоев
http://sysoev.ru
-------------- next part --------------
Index: src/http/modules/ngx_http_range_filter_module.c
===================================================================
--- src/http/modules/ngx_http_range_filter_module.c	(revision 412)
+++ src/http/modules/ngx_http_range_filter_module.c	(revision 413)
@@ -596,13 +596,13 @@
         b->file = buf->file;
 
         if (buf->in_file) {
-            buf->file_pos = range[i].start;
-            buf->file_last = range[i].end;
+            b->file_pos = range[i].start;
+            b->file_last = range[i].end;
         }
 
         if (ngx_buf_in_memory(buf)) {
-            buf->pos = buf->start + (size_t) range[i].start;
-            buf->last = buf->start + (size_t) range[i].end;
+            b->pos = buf->start + (size_t) range[i].start;
+            b->last = buf->start + (size_t) range[i].end;
         }
 
         dcl = ngx_alloc_chain_link(r->pool);


More information about the nginx-ru mailing list