Learn about Centmin Mod LEMP Stack today
Become a Member

Nginx Centmin Mod Nginx with Cloudflare HTTP/3 Nginx Patch !

Discussion in 'Nginx and PHP-FPM news & discussions' started by eva2000, Oct 16, 2019.

  1. eva2000

    eva2000 Administrator Staff Member

    45,433
    10,310
    113
    May 24, 2014
    Brisbane, Australia
    Ratings:
    +15,990
    Local Time:
    4:16 AM
    Nginx 1.19.x
    MariaDB 5.5/10.x
    Some Twitter discussions surrounding Cloudflare Nginx HTTP/3 patched builds performance has motivated me to update my Centmin Mod Nginx 1.16.1 specific version's Nginx HTTP/3 build to latest Cloudflare Quiche library's h3-24 draft.
    • Rebuilt custom curl-http3 with h3-24 support via Cloudflare Quiche
    • Rebuilt Centmin Mod Nginx 1.16.1 with Cloudflare Nginx HTTP/3 patch via private branch of Centmin Mod 123.09beta01 with support for HTTP/3 h3-24 draft support
    curl-http3 HTTP/3 header check - seems Quiche library supports both h3-23 and current h3-24 drafts ? with ALPN = h3-24h3-23
    Code (Text):
    curl-http3 --http3 -4Iv https://domain.com/
    *   Trying ip:443...
    * Sent QUIC client Initial, ALPN: h3-24h3-23
    * h3 [:method: HEAD]
    * h3 [:path: /]
    * h3 [:scheme: https]
    * h3 [:authority: domain.com]
    * h3 [user-agent: curl/7.68.0-DEV]
    * h3 [accept: */*]
    * Using HTTP/3 Stream ID: 0 (easy handle 0x55cf29d3deb0)
    > HEAD / HTTP/3
    > Host: domain.com
    > user-agent: curl/7.68.0-DEV
    > accept: */*
    >
    < HTTP/3 200
    

    Code (Text):
    curl-http3 --http3 -4I https://domain.com/
    HTTP/3 200
    date: Tue, 26 Nov 2019 16:28:12 GMT
    content-type: text/html; charset=utf-8
    content-length: 3801
    vary: Accept-Encoding
    etag: "58e34c93-ed9"
    server: nginx centminmod
    x-powered-by: centminmod
    expires: Wed, 27 Nov 2019 16:28:12 GMT
    cache-control: max-age=86400
    x-frame-options: SAMEORIGIN
    x-xss-protection: 1; mode=block
    x-content-type-options: nosniff
    alt-svc: h3-23=":443"; ma=86400, h3-24=":443"; ma=86400
    accept-ranges: bytes
    

    curl-http3 version
    Code (Text):
    curl-http3 -V
    curl 7.68.0-DEV (x86_64-pc-linux-gnu) libcurl/7.68.0-DEV BoringSSL zlib/1.2.11 brotli/1.0.7 libidn2/2.0.5 libpsl/0.20.2 (+libidn2/2.0.5) libssh2/1.8.0 nghttp2/1.36.0 quiche/0.1.0
    Release-Date: [unreleased]
    Protocols: dict file ftp ftps gopher http https imap imaps ldap ldaps pop3 pop3s rtsp scp sftp smb smbs smtp smtps telnet tftp
    Features: alt-svc AsynchDNS brotli HTTP2 HTTP3 HTTPS-proxy IDN IPv6 Largefile libz NTLM NTLM_WB PSL SSL UnixSockets
    

    Centmin Mod Nginx 1.16.1 built against Google BoringSSL with Cloudflare Quiche library for HTTP/3 and HTTP/2 + built with label for latest Quiche library commit at time of Nginx build added to build version
    From Chrome Canary browser with
    Code (Text):
    --enable-quic --quic-version=h3-24

    cloudflare-nginx-1.16.1-http3-patch-curl-http3-04.png

    cloudflare-nginx-1.16.1-http3-patch-curl-http3-03.png
     
  2. eva2000

    eva2000 Administrator Staff Member

    45,433
    10,310
    113
    May 24, 2014
    Brisbane, Australia
    Ratings:
    +15,990
    Local Time:
    4:16 AM
    Nginx 1.19.x
    MariaDB 5.5/10.x
  3. buik

    buik “A winner never stops trying.” Premium Member

    1,309
    360
    83
    Apr 29, 2016
    Ratings:
    +1,073
    Local Time:
    8:16 PM