Testeur HTTP/3 et QUIC

Sonde n'importe quelle URL HTTPS pour un vrai support HTTP/3 et QUIC : lit alt-svc, nomme le logiciel serveur et explique comment l'activer.

Ce testeur HTTP/3 et QUIC te dit si un site parle vraiment HTTP/3, ou s'il fait juste semblant. Colle une URL HTTPS et notre serveur récupère les en-têtes de la réponse, lit la directive alt-svc, puis en extrait les versions de QUIC proposées (h3, h3-29, h3-28 et le reste), avec un pronostic sur la reprise 0-RTT en prime. Quand alt-svc manque, il se rabat sur l'en-tête server et reconnaît Cloudflare, Fastly, LiteSpeed, h2o, nginx-quic, Caddy et compagnie, donc un premier contact à froid qui n'a pas encore annoncé QUIC obtient quand même une lecture honnête plutôt qu'un non sec. Tu obtiens un verdict clair, les en-têtes bruts et des notes pas à pas pour activer HTTP/3 sur ta stack. Sers-t'en en pleine migration, quand tu traques un ralentissement mobile, ou pour vérifier qu'un prestataire a livré le boulot facturé. La requête part de notre serveur, pas de ton navigateur, donc l'origine ne voit jamais ton IP.

Les requêtes passent par le service de lookup PeopleAreGeek. Nous ne journalisons rien.

Sonde de support HTTP/3 et QUIC

Colle une URL. Je te dis si elle parle vraiment HTTP/3, ou si elle fait juste semblant. Notre serveur récupère les en-têtes de la réponse, lit la directive alt-svc, puis en extrait les versions de QUIC que le site annonce (h3, h3-29, h3-28, tout ce qui traîne). Il tente aussi un pronostic sur le 0-RTT. Il devine le logiciel serveur à partir des en-têtes : Cloudflare, Fastly, LiteSpeed, nginx-quic, h2o. Et si tu n'es pas encore en HTTP/3, il te montre comment l'activer. Franchement, je m'en sers tout le temps : en pleine migration, quand je traque un ralentissement sur mobile, ou pour vérifier discrètement qu'un prestataire a bien fait le boulot qu'il m'a facturé.

Tout repose sur l'en-tête alt-svc. C'est un serveur qui dit en gros : « tiens, je parle aussi ce protocole par ici ». Le piège : ton premier appel atterrit souvent en HTTP/1.1 ou HTTP/2, et le HTTP/3 ne se réveille qu'à la connexion suivante. Donc une sonde à froid qui revient vide, ce n'est pas un verdict. Attends quelques secondes et relance.

Ce que HTTP/3 et QUIC changent pour un site public

Ce testeur HTTP/3 et QUIC te dit si un site parle vraiment HTTP/3, ou s'il fait juste semblant. HTTP/3, c'est le petit dernier de la famille, et le vrai changement est enterré en dessous. HTTP/1.1 et HTTP/2 reposent tous les deux sur TCP. HTTP/3 jette TCP par la fenêtre et roule sur QUIC à la place, un transport basé sur UDP arrivé sous le nom de RFC 9000 en 2021. Alors concrètement, qu'est-ce que tu y gagnes ? Commençons par le gros morceau : QUIC tue le head-of-line blocking qui plombe HTTP/2 dès qu'un réseau se met à perdre des paquets. Il fusionne aussi les handshakes crypto et transport en un seul aller-retour, donc les connexions montent plus vite. Et puis il y a la reprise 0-RTT, qui permet à un visiteur de retour d'envoyer sa première requête avant même que le handshake soit fini. Là où il gagne vraiment sa place, c'est sur mobile. Signal capricieux, paquets qui disparaissent, latence qui part dans tous les sens. Un site classique récupère dans les 5 à 15 % sur les temps de chargement, et une grosse single-page app peut faire encore mieux.

Le mécanisme est assez simple. La sonde appelle ton URL une fois et lit l'en-tête alt-svc de la réponse. C'est cet en-tête que les serveurs et CDN modernes utilisent pour annoncer leur endpoint QUIC et sa version. Repère h3 dedans, ou n'importe quel draft h3-XX, et c'est plié : le navigateur bascule en HTTP/3 à sa prochaine connexion. Quand l'en-tête manque, la sonde ne hausse pas les épaules en abandonnant. Elle lit aussi l'en-tête server (Cloudflare, Fastly, nginx-quic, LiteSpeed, h2o, Caddy, Vercel) et fait une supposition éclairée, parce que franchement, beaucoup d'entre eux ne prennent pas la peine d'annoncer QUIC sur un premier contact à froid, même quand il est branché et n'attend que ça.

Comment fonctionne la sonde HTTP/3

  1. Normalisation de l'URL d'entrée. J'ajoute https:// si tu l'as oublié, et je rejette tout ce qui n'est pas en HTTPS. HTTP/3 ne tourne tout simplement pas sans TLS, point.
  2. Lancement d'une requête HTTP via notre propre endpoint d'en-têtes. Ce premier appel part en HTTP/2 sur TCP. Et c'est largement suffisant. C'est tout ce qu'il me faut pour lire la ligne alt-svc où QUIC est annoncé.
  3. Analyse de alt-svc en le découpant en ses tokens de service alternatif, puis en extrayant les noms de protocole (h3, h3-29, h2...), le port optionnel, et le ma (max-age) que le serveur a fixé pour la mise en cache.
  4. Inspection de server et des autres en-têtes indices (x-cdn, cf-ray, x-served-by, via) pour comprendre ce qui tourne, et estimer si HTTP/3 est un pari raisonnable même quand rien n'a encore été annoncé.
  5. Affichage du verdict. Supporté quand alt-svc liste vraiment h3. Probable quand le logiciel fait du h3 mais qu'aucun alt-svc n'est encore apparu. Inconnu quand il y a trop peu d'éléments pour trancher. Non supporté quand il n'y a aucun signal et que le serveur en est un dont je sais qu'il ne peut pas faire de HTTP/3.

Cas d'usage courants d'un checker HTTP/3

  • Optimisation des perfs sur mobile. Pointe-le sur ta page d'accueil, puis sur tes pires pages. HTTP/3 gagne sa place sur les connexions cellulaires et instables, donc si ton public vit sur smartphone, l'activer est sans doute l'un des meilleurs retours sur effort que tu obtiendras.
  • Planification de migration CDN. Tenté de passer à un CDN parce qu'il se vante de faire du HTTP/3 ? Vérifie d'abord. Tu l'as peut-être déjà. Des serveurs d'origine comme LiteSpeed, h2o et nginx-quic font du HTTP/3 tout seuls, sans CDN dans l'équation.
  • Due diligence prestataire. Un partenaire SaaS qui te balance encore de gros assets en HTTP/1.1 en 2026 ? Ça en dit long. Lance la sonde et mets le résultat directement dans ta grille d'évaluation technique.
  • SEO et Core Web Vitals. Un handshake TLS plus rapide plus moins de head-of-line blocking, ça pousse le LCP et l'INP dans le bon sens sur mobile, et ces métriques nourrissent le signal de ranking.
  • Dépannage réseau. Quand des gens sur un FAI bien précis répètent que le site rame, confirmer que HTTP/3 est actif te permet de barrer un suspect de la liste.
  • Audit de compatibilité navigateur/client. Ne laisse pas les vieux clients sur le carreau. Active HTTP/3, d'accord, mais HTTP/2 doit rester en place comme repli pour tout navigateur qui ne sait pas encore parler QUIC.

Limites et précisions sur la fiabilité

Parlons franchement de ce que ça peut et ne peut pas te dire, puisque tout repose sur ce seul en-tête alt-svc. Certains serveurs ne l'affichent qu'après avoir traité quelques requêtes, donc une première réponse peut revenir nue alors que HTTP/3 est pleinement en service. Quand ça arrive, je me rabats sur la lecture du logiciel serveur. Cloudflare, Fastly, LiteSpeed, nginx-quic, h2o et Caddy passent tous par défaut en HTTP/3, donc voir un de ces noms sans alt-svc te donne « probablement supporté » plutôt qu'un « non » sec. Pour un oui en béton, il faudrait un vrai client HTTP/3 qui ouvre un handshake réel, et ça, ce n'est tout simplement pas un truc qu'une vérif côté serveur peut faire d'ici.

Un dernier point, et il compte : la requête part de notre serveur, pas de ton navigateur. L'origine que tu sondes ne voit jamais ton IP, et je ne garde pas l'URL une fois la sonde terminée. C'est une seule requête HTTPS qui lit une poignée d'en-têtes. Le même tour de passe-passe que les grands tableaux de bord de CDN utilisent pour t'afficher le statut HTTP/3, juste avec le rideau tiré.

Questions fréquentes

Ça veut dire quoi, h3-29 dans alt-svc ?

C'est un reste d'avant que la spec soit finalisée. Les drafts ont récupéré des noms comme h3-29 (oui, draft 29), alors que la RFC finie, c'est juste h3 tout court, sans suffixe. Plein de serveurs annoncent encore les deux pour ne pas laisser les anciens clients sur le carreau. Repère n'importe quel token h3 et HTTP/3 est actif.

Pourquoi HTTP/3 est-il signalé « probable » sans alt-svc explicite ?

Parce que certains serveurs gardent la directive sous le coude jusqu'après la première réponse, ou jusqu'à ce qu'une session soit reprise. Donc quand je reconnais le logiciel comme Cloudflare, Fastly, LiteSpeed, h2o, nginx-quic ou Caddy, qui livrent tous HTTP/3 activé par défaut, je dis « probable » plutôt que de te promettre un « oui ». Un vrai « oui » suppose d'ouvrir un handshake HTTP/3 réel. Et ça, je ne le fais pas ici.

Activer HTTP/3 demande-t-il un nouveau certificat TLS ?

Non. Ton certif est parfait tel quel. HTTP/3 s'appuie sur la même couche TLS 1.3 que HTTP/2-sur-TCP utilise déjà, donc rien à réémettre. Ce dont le serveur a besoin en revanche, c'est du port UDP 443 ouvert plus un build capable de faire du QUIC, et ce build est livré par défaut sur Cloudflare, Fastly, LiteSpeed, h2o et les nginx-quic récents.

HTTP/3 est-il toujours plus rapide que HTTP/2 ?

Pas toujours, non. Sur une liaison filaire propre, l'écart est minuscule, tu aurais du mal à le ressentir. Honnêtement, je trouve qu'on survend HTTP/3 sur la fibre en desktop, même si je me trompe peut-être pour certains usages. Sur mobile, dès que les paquets commencent à tomber, il prend l'avantage pour de vrai : 5 à 15 % sur un site classique, davantage sur une grosse single-page app. Un petit piège. Certains firewalls d'entreprise bloquent l'UDP purement et simplement, et quand ça arrive, le navigateur retombe tranquillement sur HTTP/2.

Google s'intéresse-t-il à HTTP/3 pour le SEO ?

Seulement de biais. Il n'y a pas de case où Google te file des points pour faire tourner HTTP/3, pas directement. Mais ça remonte tes Core Web Vitals sur mobile, et ceux-là nourrissent bel et bien le signal de ranking. Donc un site plus rapide se classe discrètement un peu mieux, et avec l'indexation mobile-first, ça vaut plus qu'avant.

Comment déployer HTTP/3 sur mon origine ?

La voie la plus rapide, et de loin : coller devant un CDN qui le fait déjà. Cloudflare, Fastly et CloudFront exposent tous HTTP/3 sous forme de bouton. Tu préfères rester en self-hosted ? Fais tourner LiteSpeed, h2o, Caddy ou un build nginx-quic récent, puis ouvre le port UDP 443 dans le firewall. Ce dernier détail, c'est celui que tout le monde oublie. L'onglet « Comment activer HTTP/3 » en haut te guide pas à pas selon ta stack.