HTTP/3 QUIC Etkinleştirme: Sunucuda TLS 1.3 Kurulumu

HTTP/3 (QUIC) etkinleştirmenin ilk koşulu, sunucunuzda TLS 1.3’ün açık olmasıdır; HTTP/3 yalnızca TLS 1.3 üzerinden çalışır. Aşağıdaki adımlar Nginx, LiteSpeed ve Apache’de HTTP/3 QUIC etkinleştirme sürecini, firewall düzenlemelerini ve test yöntemlerini uygulamalı olarak anlatır. Sık yapılan hataları görüp çözümleri öğrenerek protokolü güvenle devreye alabilirsiniz.

HTTP/3, web sayfalarının daha hızlı yüklenmesini sağlayan modern bir aktarım protokolüdür. TCP yerine UDP üzerinde çalışır ve bağlantı kurulum süresini kısaltır. Özellikle mobil kullanıcılarda ve paket kaybı olan ağlarda performans farkı belirginleşir.

Önemli Noktalar

  • HTTP/3 yalnızca TLS 1.3 ile çalışır; sunucuda TLS 1.3 kapalıysa tarayıcılar otomatik olarak HTTP/2’ye geri döner.
  • Nginx 1.25 ve üzeri sürümler HTTP/3’ü resmi olarak destekler, ancak modülün derlenmiş olması gerekir.
  • UDP 443 portu hem sunucu güvenlik duvarında hem bulut sağlayıcı güvenlik grubunda açık olmalıdır.
  • Apache 2.4.x sürümlerinde yerleşik HTTP/3 desteği bulunmaz; ters proxy katmanı en pratik çözümdür.
  • Alt-Svc başlığı, tarayıcıya HTTP/3 desteğini bildiren kritik bileşendir.

HTTP/3 ve QUIC Nedir, Neden TLS 1.3 Gerektirir?

HTTP/3, internet tarayıcıları ile sunucular arasında veri aktarmak için kullanılan yeni nesil bir protokoldür. QUIC ise HTTP/3’ün temelini oluşturan ve UDP üzerinde çalışan taşıma protokolüdür. Klasik HTTP/2, TCP bağlantıları kurar; HTTP/3 ise UDP paketleriyle çalışarak el sıkışma süresini azaltır.

Sunucu odasında HTTP/3 trafiğini gösteren parlak LED'li ağ anahtarı

HTTP/3 bağlantısı şifreli olarak kurulur. Protokolün tasarımı gereği TLS 1.3 kullanılır; bu nedenle sunucunuzda TLS 1.3’ün etkinleştirilmiş olması ilk adımdır. TLS 1.3 kapalıyken tarayıcılar HTTP/3 bağlantısı kuramaz ve otomatik olarak HTTP/2 veya HTTP/1.1’e geri döner.

TLS 1.3’ün HTTP/3 için zorunlu olmasının teknik nedeni, QUIC’in el sıkışma sürecini TLS oturumuyla birleştirmesidir. Bu birleşik yapı, bağlantı kurulumunu tek gidiş-dönüş süresine indirir. Geleneksel TCP+TLS yapısında ise önce TCP el sıkışması, ardından TLS el sıkışması yapılır; bu da iki veya üç gidiş-dönüş gerektirir.

Ön Koşullar: Sunucu ve Ağ Gereksinimleri

HTTP/3 QUIC etkinleştirme öncesinde aşağıdaki koşulları sağlamanız gerekir. Bu adım, sonraki yapılandırma hatalarını azaltır.

  • Sunucuda root veya sudo yetkisine sahip bir kullanıcı hesabı.
  • Nginx 1.25 veya üzeri sürüm ve derleme sırasında --with-http_v3_module seçeneği. Alternatif olarak güncel LiteSpeed veya OpenLiteSpeed.
  • Geçerli bir SSL/TLS sertifikası. Let’s Encrypt veya ticari bir sertifika kullanabilirsiniz.
  • Sunucunun güvenlik duvarına ve varsa bulut sağlayıcı güvenlik grubuna erişim.
  • Alan adınızın doğru A veya AAAA kaydına sahip olması.
  • HTTP/3 için UDP 443 portunun açık olması.

Bu koşullar sağlandığında yapılandırma dosyalarını düzenlemeye geçebilirsiniz. Sunucuya SSH ile bağlanarak işlemlere başlayın. Sunucunuzda temel güvenlik ayarları henüz yapılmadıysa Ubuntu 22.04 / 24.04 İlk Sunucu Kurulumu ve Temel Güvenlik Ayarları yazısını incelemeniz faydalı olur.

Nginx’te HTTP/3 ve TLS 1.3 Etkinleştirme

Nginx, HTTP/3 desteğini 1.25 sürümünden itibaren resmi olarak sunar. Ancak dağıtımınızın deposundaki Nginx sürümü eski olabilir ve HTTP/3 modülünü içermeyebilir. Öncelikle modülün derlenip derlenmediğini kontrol edin.

nginx -V 2>&1 | grep -o -- '--with-http_v3_module'

Komut çıktısında --with-http_v3_module ifadesini görüyorsanız Nginx HTTP/3 destekliyordur. Çıktı boşsa Nginx’in güncel sürümünü resmi depodan kurmanız veya yeniden derlemeniz gerekir. Güncel sürüm notları için nginx.org adresini kontrol edin.

Geliştirici terminalde Nginx HTTP/3 yapılandırma dosyasını düzenliyor

Adım 1: Site yapılandırma dosyasını açın. Genellikle /etc/nginx/sites-available/site.com.conf veya /etc/nginx/conf.d/site.com.conf yolundadır.

sudo nano /etc/nginx/sites-available/site.com.conf

Adım 2: Mevcut listen 443 ssl; satırını bulun. Aynı blokta HTTP/3 için ikinci bir dinleme satırı ekleyin.

listen 443 ssl;
listen 443 quic reuseport;

reuseport parametresi, aynı portun hem TCP hem UDP için kullanılabilmesini sağlar. Bu satır yoksa Nginx port çakışması nedeniyle başlatılamaz.

Adım 3: TLS protokol ayarlarını kontrol edin. ssl_protocols satırına TLSv1.3 ekleyin. Mevcut istemcilerin bağlantısını kesmemek için TLS 1.2’yi de açık bırakabilirsiniz.

ssl_protocols TLSv1.2 TLSv1.3;
Dikkat: Bu satırda TLSv1.3 yoksa HTTP/3 çalışmaz. Tarayıcılar sessizce TCP tabanlı protokolü kullanmaya devam eder.

Adım 4: Tarayıcılara HTTP/3 desteğini bildiren Alt-Svc başlığını ekleyin.

add_header Alt-Svc 'h3=":443"; ma=86400';

Bu başlık, tarayıcıya 86400 saniye boyunca HTTP/3’ün 443 numaralı UDP portundan erişilebilir olduğunu söyler. ma parametresi, tarayıcının bu bilgiyi ne kadar süreyle önbelleğe alacağını belirler.

Adım 5: Yapılandırmayı test edin ve Nginx’i yeniden yükleyin.

sudo nginx -t
sudo systemctl reload nginx

İlk komut yapılandırma hatalarını gösterir. İkinci komut ise servisi kesintiye uğratmadan yeni ayarları uygular.

CentOS Web Panel üzerinde çalışıyorsanız, Nginx HTTP/3 ayarlarını CWP özelinde anlatan CentOS Web Panel için Nginx ile HTTP/3 ve QUIC Nasıl Aktif Edilir? yazısına göz atabilirsiniz.

Apache’de HTTP/3 Desteği ve Ters Proxy Çözümü

Apache HTTP Server’ın kararlı 2.4.x sürümlerinde resmi HTTP/3 desteği bulunmaz. Bu nedenle yalnızca Apache üzerinde tam HTTP/3 QUIC etkinleştirme şu anda yaygın bir pratik değildir. Apache kullanıcıları için en sağlam çözüm, TLS 1.3’ü etkinleştirip HTTP/3’ü Nginx veya LiteSpeed gibi bir ters proxy katmanına devretmektir.

Apache’de TLS 1.3’ü açmak için SSL modülünün etkin olduğundan emin olun ve site yapılandırma dosyasında şu satırları düzenleyin.

SSLProtocol TLSv1.2 TLSv1.3
SSLCipherSuite HIGH:!aNULL:!MD5

Bu ayar, Apache’nin TLS 1.2 ve TLS 1.3 bağlantılarını kabul etmesini sağlar. TLS 1.3, HTTP/3’e geçişin temel taşıdır. Apache’yi ters proxy arkasına alırken 443 numaralı portu Nginx’in yönetmesine izin verirsiniz. Böylece Nginx HTTP/3’ü sunarken Apache de PHP ve dinamik içerikleri işleyebilir.

Nginx'in Apache önünde ters proxy olarak konumlandığı ağ akış şeması

CentOS Web Panel üzerinde Apache TLS 1.3 ayarları için CentOS Web Panel (CWP) Apache’de TLS 1.3 Nasıl Etkinleştirilir? yazısı faydalı olacaktır.

LiteSpeed ve OpenLiteSpeed’de QUIC Açma

LiteSpeed Web Server ve OpenLiteSpeed, HTTP/3 desteğini yerleşik olarak sunar. Panel üzerinden QUIC’i etkinleştirmek birkaç adım sürer.

  1. WebAdmin konsoluna giriş yapın.
  2. Configuration > Server > General bölümüne gidin.
  3. Enable QUIC seçeneğini Yes olarak işaretleyin.
  4. Listener ayarlarında UDP portunun 443 olarak tanımlı olduğunu doğrulayın.
  5. SSL/TLS sekmesinde TLS 1.3’ün etkin olduğunu kontrol edin.
  6. Ayarları kaydedip Graceful restart yapın.

LiteSpeed’de QUIC açıldığında Alt-Svc başlığı otomatik olarak yönetilir. Yine de ağ katmanında UDP 443 portunun açık olması gerekir. LiteSpeed’in QUIC desteği, Nginx’e kıyasla daha az yapılandırma adımı gerektirdiği için panel tabanlı yönetim tercih eden kullanıcılar için pratiktir.

Firewall ve DNS Ayarları

HTTP/3’ün çalışabilmesi için yalnızca TCP 443 değil, UDP 443 portunun da açık olması gerekir. Çoğu sunucuda TCP 443 zaten açıktır; ancak UDP 443 genellikle kapalıdır. Bu, HTTP/3’ün sessizce devre dışı kalmasının en yaygın nedenidir.

Ubuntu ve UFW kullanıyorsanız aşağıdaki komutları çalıştırın.

sudo ufw allow 443/tcp
sudo ufw allow 443/udp
sudo ufw reload

Firewalld kullanan sistemlerde ise şu komutları uygulayın.

sudo firewall-cmd --permanent --add-service=https
sudo firewall-cmd --permanent --add-port=443/udp
sudo firewall-cmd --reload
Ağ yöneticisi güvenlik duvarında UDP 443 kuralını kontrol ediyor

Bulut sunucu kullanıyorsanız sağlayıcınızın güvenlik grubunda da UDP 443 kuralını eklemeniz gerekir. Ayrıca sunucu bir NAT veya yük dengeleyici arkasındaysa UDP trafiğinin doğru yönlendirildiğinden emin olun. Bazı yük dengeleyiciler UDP passthrough’u varsayılan olarak desteklemez; bu durumda sağlayıcınızın dokümantasyonunu kontrol etmeniz gerekir.

DNS tarafında özel bir kayıt değişikliği gerekmez. Ancak CDN kullanıyorsanız HTTP/3 ayarı genellikle CDN tarafında yapılır. Örneğin Cloudflare’de HTTP/3 varsayılan olarak açıktır; köken sunucuda da UDP 443 açıksa uçtan uca QUIC kullanılabilir.

HTTP/3’ü Test Etme ve Doğrulama

Yapılandırma sonrası HTTP/3’ün gerçekten çalışıp çalışmadığını doğrulamanız gerekir. En hızlı yöntem, güncel bir curl sürümü ile HTTP/3 isteği göndermektir.

curl --http3 -I https://ornek.com

Komut çıktısında HTTP/3 200 gibi bir yanıt görüyorsanız protokol aktif demektir. curl’ünüz HTTP/3 desteği içermiyorsa güncel sürümü curl.se adresinden edinebilirsiniz.

Nginx yapılandırmasını hızlıca doğrulamak için şu komutu da kullanabilirsiniz.

nginx -T | grep -E 'listen.*quic|Alt-Svc'

Tarayıcıda ise Chrome veya Edge geliştirici araçlarını açın. Network sekmesinde Protocol sütununu görünür hale getirin. İsteğin protokolü h3 olarak görünüyorsa HTTP/3 başarıyla kullanılıyor demektir.

Sayfa hızındaki dolaylı etkiyi görmek için TTFB Nedir? Google SEO İçin Sunucu Yanıt Süresini Düşürmenin 5 Yolu yazısını inceleyebilirsiniz.

İpucu: Test sırasında tarayıcı önbelleğini temizleyin. Tarayıcılar Alt-Svc bilgisini önbelleğe aldığı için eski sonuçlar görebilirsiniz.

Sık Karşılaşılan Hatalar ve Çözümleri

HTTP/3 kurulumunda ortaya çıkan sorunlar genellikle modül eksikliği, port kapalılığı veya başlık eksikliğinden kaynaklanır. Aşağıdaki tablo yaygın hataları özetler.

Hata Belirtisi Olası Neden Çözüm
unknown directive "http3" Eski Nginx sürümü veya modül eksik Nginx’i güncelleyip listen ... quic satırını kullanın
bind() failed veya Address already in use reuseport eksik Dinleme satırına reuseport ekleyin
curl: option --http3 is unknown curl sürümü eski HTTP/3 destekli güncel curl kurun
Tarayıcı sürekli TCP kullanıyor UDP 443 kapalı veya Alt-Svc yok Firewall kuralını ve başlık satırını kontrol edin
TLS el sıkışma hatası ssl_protocols satırında TLS 1.3 yok Protokol listesine TLSv1.3 ekleyin
HTTP/3 çalışıyor ancak performans artışı yok CDN veya ters proxy HTTP/3’ü desteklemiyor Ara katmanların UDP 443 passthrough yaptığını doğrulayın

Bu hataları çözdükten sonra Nginx veya LiteSpeed servisini yeniden yükleyin ve test adımını tekrarlayın. Sorun devam ediyorsa sunucu loglarını inceleyin; Nginx için /var/log/nginx/error.log dosyası genellikle ipucu verir.

Hangi Yöntemi Seçmelisiniz?

Nginx kullanıyorsanız ve sunucunuzda güncel sürüm kuruluysa, Nginx HTTP/3 en yaygın ve iyi belgelenmiş yöntemdir. LiteSpeed veya OpenLiteSpeed kullanıyorsanız panel üzerinden QUIC’i açmak birkaç dakika sürer. Apache kullanıyorsanız kısa vadede TLS 1.3’ü etkinleştirip HTTP/3 katmanını Nginx’e devretmeniz en pratik çözümdür.

Değişiklikleri canlıya almadan önce test ortamında deneyin ve mevcut yapılandırmanın yedeğini alın. Kurulum sonrası curl --http3 ile doğrulama yapmayı atlamayın. HTTP/3’ün sağladığı hız avantajı, özellikle mobil trafiği yoğun olan sitelerde ve uzak coğrafi konumlardan erişilen sunucularda daha belirgin hissedilir.

Sıkça Sorulan Sorular

HTTP/3’ü etkinleştirmeden önce TLS 1.3 zorunlu mu?

Evet. HTTP/3 protokolü el sıkışmasını TLS 1.3 ile yapar. Sunucuda TLS 1.3 kapalıysa tarayıcılar HTTP/3 bağlantısı kuramaz ve TCP tabanlı protokolü kullanır.

UDP 443’ü açmazsam ne olur?

Tarayıcılar QUIC bağlantısı kuramaz ve otomatik olarak TCP 443 üzerinden HTTP/2 veya HTTP/1.1’e geri döner. Site çalışmaya devam eder ancak HTTP/3’ün hız avantajından yararlanamazsınız.

HTTP/3 SEO sıralamasını doğrudan yükseltir mi?

HTTP/3 doğrudan bir sıralama sinyali değildir. Ancak sayfa yükleme süresini düşürerek kullanıcı deneyimini ve dolaylı olarak SEO performansını iyileştirebilir.

Paylaşımlı hosting kullanıyorsam HTTP/3’ü kendim etkinleştirebilir miyim?

Paylaşımlı hosting ortamlarında sunucu yapılandırmasına erişiminiz olmadığı için HTTP/3’ü kendiniz etkinleştiremezsiniz. Hosting sağlayıcınızın HTTP/3 desteği sunup sunmadığını kontrol etmeniz gerekir.

HTTP/3’ü etkinleştirdikten sonra eski tarayıcılar siteye erişemez mi?

Hayır. HTTP/3 desteklemeyen tarayıcılar otomatik olarak HTTP/2 veya HTTP/1.1 üzerinden bağlanır. Protokol geriye dönük uyumluluk için tasarlanmıştır; hiçbir kullanıcı erişim kaybı yaşamaz.

İlginizi Çekebilir:WAF Rate Limiting Yapılandırma: Adım Adım Rehber
share Paylaş facebook pinterest whatsapp x print

Benzer İçerikler

Web Sitelerinde Spam Trafiğini Engelleme (2025 Rehberi)
yum update –nobest: Linux Sunucularda Güncelleme Sorunlarına Pratik Çözüm
500 Plesk\Exception\Database Hatası (SQLSTATE 2002) – Kesin Çözüm Rehberi
Hosting Hataları ve Çözüm Akışları: cPanel, Plesk ve CWP Rehberi
500 Internal Server Error: Nedenleri ve Kesin Çözüm Rehberi
CentOS Web Panel için Nginx ile HTTP/3 ve QUIC Nasıl Aktif Edilir?

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Are you human? Please solve:Captcha


▲
Saviorhost İnternet Hizmetleri | © 2026 |