HTTP/3, TCP yerine UDP üzerinde çalışan QUIC taşıma protokolünü kullanır. TLS 1.3 QUIC'in içine gömülüdür; bu yüzden HTTP/3 için TLS 1.3 destekli geçerli bir sertifika gerekir. Bağlantı kurulumu daha hızlıdır ve paket kaybında tıkanma etkisi azalır.
Ön koşullar
- HTTP/3 modülüyle derlenmiş Nginx (1.25 ve sonrasında
ngx_http_v3_modulekararlı sürümde mevcuttur; paketinizde etkin olup olmadığınınginx -Vile kontrol edin). - TLS 1.3 açık; geçerli sertifika ve zincir.
- Güvenlik duvarında UDP 443 açık (yalnızca TCP 443 yetmez).
Nginx yapılandırması
server {
listen 443 ssl;
listen 443 quic reuseport;
http2 on;
server_name alanadi.com;
ssl_protocols TLSv1.2 TLSv1.3;
ssl_certificate /etc/ssl/alanadi-fullchain.pem;
ssl_certificate_key /etc/ssl/alanadi.key;
add_header Alt-Svc 'h3=":443"; ma=86400' always;
}
Alt-Svc başlığı, tarayıcıya HTTP/3'ün mevcut olduğunu bildirir. Tarayıcı ilk bağlantıyı genellikle HTTP/2 ile kurar, sonra HTTP/3'e geçer. reuseport seçeneği adres:port çifti başına bir kez tanımlanmalıdır.
Güvenlik duvarı
ufw allow 443/udp
# veya
firewall-cmd --permanent --add-port=443/udp && firewall-cmd --reload
Doğrulama
curl -sI https://alanadi.com | grep -i alt-svc
curl --http3 -I https://alanadi.com # curl HTTP/3 desteğiyle derlenmişse
Tarayıcı geliştirici araçlarında Protocol sütununda h3 görmelisiniz. İlk yüklemede h2 görünmesi normaldir.
Sık sorunlar
- UDP 443 bulut güvenlik grubunda ya da kurumsal ağda engelli; tarayıcı sessizce HTTP/2'ye döner.
- Yük dengeleyici UDP'yi iletmiyor.
- Modül derlenmemiş:
unknown directive "quic"hatası.
Tarayıcılar HTTP/3 başarısız olduğunda geri döndüğü için deneme riski düşüktür. Temel TLS durumunuzu SSL Checker ile, sertifika seçeneklerini SSL sertifikaları sayfamızdan inceleyebilirsiniz.