HTTP/2 Issues
Valentin V. Bartenev
vbart at nginx.com
Thu Nov 12 16:17:37 UTC 2015
On Thursday 12 November 2015 00:37:36 DrDinosaur wrote:
> Hi,
>
> I was having a few issues with HTTP/2 requests. Some files and images aren't
> loading on Chrome. I filed a bug report and documented the issue extensively
> here: https://code.google.com/p/chromium/issues/detail?id=553282
>
> It might just be a Chrome issue, but I want to see if there is also a bug in
> Nginx or perhaps something I am doing wrong.
>
> Here is the output from nginx -V: https://pastebin.com/Xez5hW0k
>
> Any information will be helpful. Thanks.
>
[..]
Thank you for the report. I've found an issue in the HTTP/2 module.
Could you try the following patch?
diff -r 47e1a02be058 -r 7e7f773ac055 src/http/v2/ngx_http_v2_filter_module.c
--- a/src/http/v2/ngx_http_v2_filter_module.c Thu Nov 12 18:11:16 2015 +0300
+++ b/src/http/v2/ngx_http_v2_filter_module.c Thu Nov 12 19:13:50 2015 +0300
@@ -1054,13 +1054,27 @@ static ngx_int_t
ngx_http_v2_headers_frame_handler(ngx_http_v2_connection_t *h2c,
ngx_http_v2_out_frame_t *frame)
{
- ngx_buf_t *buf;
+ ngx_chain_t *cl;
ngx_http_v2_stream_t *stream;
- buf = frame->first->buf;
+ cl = frame->first;
- if (buf->pos != buf->last) {
- return NGX_AGAIN;
+ for ( ;; ) {
+ if (cl->buf->pos != cl->buf->last) {
+ frame->first = cl;
+
+ ngx_log_debug2(NGX_LOG_DEBUG_HTTP, h2c->connection->log, 0,
+ "http2:%ui HEADERS frame %p was sent partially",
+ stream->node->id, frame);
+
+ return NGX_AGAIN;
+ }
+
+ if (cl == frame->last) {
+ break;
+ }
+
+ cl = cl->next;
}
stream = frame->stream;
More information about the nginx
mailing list