Welcome! Log In Create A New Profile

Advanced

Re: http2 broken

July 11, 2018 01:26PM
Get it, I'll try it, thank you again.

On Thu, Jul 12, 2018 at 1:02 AM Maxim Dounin <mdounin@mdounin.ru> wrote:

> Hello!
>
> On Wed, Jul 11, 2018 at 08:56:56PM +0800, 洪志道 wrote:
>
> > But there are still some clients use the old version.
> > Is it a way to be compatible with it?
> > Or other suggestions?
> > @Maxim Dounin <mdounin@mdounin.ru>
>
> As I already wrote in ticket #1397, we can try introducing a
> workaround in nginx, but I'm not convinced it worth the effort and,
> more importantly, associated downsides for non-broken clients.
>
> # HG changeset patch
> # User Maxim Dounin <mdounin@mdounin.ru>
> # Date 1531328359 -10800
> # Wed Jul 11 19:59:19 2018 +0300
> # Node ID f44e74d331885dce8682d2a9802eb707be7ae86f
> # Parent 54683f650cbdcd73f7f8d845c843295978da5a85
> HTTP/2: workaround for clients which fail on table size updates.
>
> There are clients which cannot handle HPACK's dynamic table size updates
> as added in 12cadc4669a7 (1.13.6). Notably, old versions of OkHttp library
> are known to fail on it (ticket #1397).
>
> This change makes it possible to work with such clients by only sending
> dynamic table size updates in response to SETTINGS_HEADER_TABLE_SIZE. As
> a downside, clients which do not use SETTINGS_HEADER_TABLE_SIZE will
> continue to maintain default 4k table.
>
> diff --git a/src/http/v2/ngx_http_v2.c b/src/http/v2/ngx_http_v2.c
> --- a/src/http/v2/ngx_http_v2.c
> +++ b/src/http/v2/ngx_http_v2.c
> @@ -270,8 +270,6 @@ ngx_http_v2_init(ngx_event_t *rev)
>
> h2c->frame_size = NGX_HTTP_V2_DEFAULT_FRAME_SIZE;
>
> - h2c->table_update = 1;
> -
> h2scf = ngx_http_get_module_srv_conf(hc->conf_ctx,
> ngx_http_v2_module);
>
> h2c->concurrent_pushes = h2scf->concurrent_pushes;
> @@ -2075,6 +2073,11 @@ ngx_http_v2_state_settings_params(ngx_ht
> h2c->concurrent_pushes = ngx_min(value,
> h2scf->concurrent_pushes);
> break;
>
> + case NGX_HTTP_V2_HEADER_TABLE_SIZE_SETTING:
> +
> + h2c->table_update = 1;
> + break;
> +
> default:
> break;
> }
>
> --
> Maxim Dounin
> http://mdounin.ru/
> _______________________________________________
> nginx-devel mailing list
> nginx-devel@nginx.org
> http://mailman.nginx.org/mailman/listinfo/nginx-devel
_______________________________________________
nginx-devel mailing list
nginx-devel@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-devel
Subject Author Views Posted

http2 broken

karton 72 July 11, 2018 05:30AM

Re: http2 broken

karton 21 July 11, 2018 05:38AM

Re: http2 broken

tokers 24 July 11, 2018 05:46AM

Re: http2 broken

karton 26 July 11, 2018 08:58AM

Re: http2 broken

Maxim Dounin 17 July 11, 2018 01:04PM

Re: http2 broken

karton 33 July 11, 2018 01:26PM



Sorry, you do not have permission to post/reply in this forum.

Online Users

Guests: 69
Record Number of Users: 6 on February 13, 2018
Record Number of Guests: 254 on July 05, 2018
Powered by nginx      Powered by FreeBSD      PHP Powered      Powered by MariaDB      ipv6 ready