Loading...

CDN.com.tr Help

HTTP/3 (QUIC): turn it off for a hostname

HTTP/3 is on for every HTTPS hostname by default. Turn it off for one hostname in its details on the Domains tab of Domains & Rules when its visitors, or a network they use, have trouble with QUIC; those visitors then use HTTP/2.

HTTP/3 (QUIC): turn it off for a hostname

HTTP/3 is on for every HTTPS hostname by default. Turn it off for one hostname in its details on the Domains tab of Domains & Rules when its visitors, or a network they use, have trouble with QUIC; those visitors then use HTTP/2.

Related guides

The rules that decide which hostnames are served over HTTPS, and another delivery setting that is set per domain.

Per domain

Brotli and gzip compression

Compression is also set per domain, by the domain's oldest rule.

Open the topic
Delivery rules

Write a rule for a domain and path

A hostname gets the HTTP/3 setting once an HTTPS rule serves it by its own name.

Open the topic

Panel path

  1. Management Panel
  2. Domains & Rules
  3. Domains
  4. Details
  5. HTTP/3 (QUIC)

Prerequisites

  • A hostname of the account that a delivery rule serves over HTTPS.
  • curl for the check.

Step-by-step guide

1

Turn HTTP/3 off for a hostname

The switch is in the details of each hostname on the Domains tab.

  • Open Domains & Rules; the Domains tab opens first.
  • Press Details on the hostname's row.
  • Under HTTP/3 (QUIC), press Turn HTTP/3 off and confirm.

Expected result: The details say HTTP/3 is Off, and the hostname's Certificate cell reads HTTP/3 off.

2

Check it with curl

Request the hostname over HTTPS and read the Alt-Svc header, then confirm that HTTP/2 answers.

  • Send a HEAD request and look for alt-svc.
  • Send a HEAD request over HTTP/2 and read the status line.

Expected result: No h3 in an alt-svc header while HTTP/3 is off (h3=":443" while it is on), and HTTP/2 200 on the second request.

cdnctl equivalent
curl -sI https://www.example.com/ | grep -i '^alt-svc'
curl -sI --http2 https://www.example.com/ | head -1

Verification

  • curl -sI https://www.example.com/ | grep -i '^alt-svc' → no h3 while HTTP/3 is off; h3=":443" while it is on
  • curl -sI --http2 https://www.example.com/ | head -1 → HTTP/2 200

Use cases

Some visitors of one of your hostnames report pages that load slowly or stall, for example behind a network that limits UDP traffic, and the trouble goes away when their browser uses HTTP/2.

Quick workflow

  1. Open Domains & Rules for the account; the Domains tab opens first.
  2. Find the hostname in the list and press Details on its row.
  3. Under HTTP/3 (QUIC), press Turn HTTP/3 off and confirm.
  4. Once the change is published, check the hostname's response headers with curl.

Checks

  • HTTP/3 is HTTP over QUIC, a transport that runs on UDP instead of TCP. A browser first connects over HTTP/2 or HTTP/1.1, learns from the Alt-Svc response header that the hostname also offers HTTP/3, and uses QUIC for its next connections.
  • The setting is per hostname: each hostname a rule serves over HTTPS has its own. Turning one off leaves the others as they are, the names under the same domain included.
  • With HTTP/3 off, the hostname no longer announces HTTP/3 and visitors are served over HTTP/2. Your content, cache, rules and certificate stay the same.
  • The change applies to new visitors as soon as it is published. A browser that already learned HTTP/3 for the hostname may keep using it for up to one hour.
  • Plain HTTP is not affected: HTTP/3 is only offered over HTTPS.
  • Turning the switch back on announces HTTP/3 again from the next publish.

Frequently asked questions

When should I turn HTTP/3 off?

When visitors of a hostname, or a network they use, have trouble with QUIC: some corporate firewalls and networks limit or block UDP traffic, and a browser there may keep trying HTTP/3 before it falls back. For most sites, leave it on.

What do visitors use when it is off?

HTTP/2 over TLS, the same as browsers that do not support HTTP/3. Nothing else changes.

Why does a browser still use HTTP/3 after I turned it off?

Browsers remember that a hostname offers HTTP/3. A browser that learned it before the change may keep using it for up to one hour; new visitors get HTTP/2 as soon as the change is published.

Why can't I turn it off for my hostname?

HTTP/3 is offered only over HTTPS, so the setting works on a hostname that a rule serves over HTTPS by its own name. Add the hostname to a rule with the HTTPS protocol; a name that only a wildcard rule (*.example.com) covers follows the setting of the wildcard hostname.