От HTTP/0.9 до HTTP/3 — как менялся протокол, который держит Интернет.
$ cat /history/http.txt
1989 — Тим Бернерс-Ли в CERN создаёт HTTP для обмена документами.
1991 — HTTP/0.9 (только GET, без заголовков).
1996 — HTTP/1.0 (заголовки, статус‑коды, POST).
1997 — HTTP/1.1 (keep‑alive, конвейеризация, Host).
2015 — HTTP/2 (двоичный формат, мультиплексирование).
2019 — HTTP/3 (QUIC на базе UDP, 0‑RTT).
// всё начиналось с одной строки...
# nginx.conf — включение QUIC server { listen 443 quic reuseport; listen [::]:443 quic reuseport; listen 443 ssl http2; # fallback ssl_certificate /etc/ssl/cert.pem; ssl_certificate_key /etc/ssl/privkey.pem; ssl_protocols TLSv1.3; ssl_early_data on; # 0‑RTT add_header Alt-Svc 'h3=":443"; ma=86400'; location / { root /var/www/html; index index.html; } }
// после проверки nginx -t и systemctl reload nginx
▸ Проверка Alt-Svc
$ curl -I https://ваш-сайт.ru | grep alt-svc alt-svc: h3=":443"; ma=86400
▸ curl с HTTP/3 (Docker)
$ docker run --rm ymuski/curl-http3 \ curl --http3-only -ksSLI https://ваш-сайт.ru HTTP/3 200