Nginx , verimli performansı, düşük bellek tüketimi ve çeşitli protokoller için güçlü desteği nedeniyle birçok yöneticinin ve geliştiricinin kalbini kazanan açık kaynaklı bir web sunucusudur. Bugün, Nginx’te HTTP/2 desteğinin yapılandırılması hakkında konuşacağız.

HTTP/2, sunucu ile kullanıcı arasındaki veri aktarımını iyileştiren HTTP protokolünün bir evrimidir. Eşzamanlı bağlantı sayısında bir sınıra sahip olan ve bu nedenle ağır sayfaların yüklenmesini yavaşlatan HTTP 1.1’in yerini alır. HTTP/2 bu sorunu paralel veri yüklemesine ve HTTP başlık sıkıştırmasına izin vererek çözer.

HTTP/2’ye geçiş neden önemlidir?

HTTP/2 ‘ye geçmek yalnızca web sitenizin yüklenmesini hızlandırmakla kalmaz, aynı zamanda veri aktarımının güvenliğini de artırır. Tüm modern tarayıcılar, HTTP/2’yi desteklemek için web sitelerinin HTTPS kullanmasını gerektirir, bu da sunucu ile ziyaretçiler arasındaki veri iletimini daha güvenli hale getirir.

HTTP/2’ye geçiş süreci

HTTP/2’yi kurmaya başlamadan önce , Ubuntu 18.04 çalıştıran ve Nginx yüklü bir sunucunuz olmalıdır. Ayrıca, alan adınız sunucuya yönlendirilmeli ve bu alan adı için bir SSL sertifikası (örneğin, Let’s Encrypt) yüklü olmalıdır.

1. Sunucu kurulumu

Etki alanınızın yapılandırma dosyasını açın:

vim /etc/nginx/sites-available/your_domain

IPv6 ve IPv4 bağlantıları için HTTP/2 desteği ekleyin:

listen [::]:443 ssl hp2 ipv6only=on;
dinle 443 ssl http2;

Değişikliklerinizi kaydedin ve sözdizimini kontrol edin:

nginx -t

2. Geliştirilmiş güvenlik

Güvenliği artırmak için güvenli olmayan şifreleri hariç tutun. Etki alanınızın yapılandırma dosyasında ssl_ciphers seçeneğini değiştirin:

ssl_ciphers EECDH+CHACHA20:EECDH+AES128:RSA+AES128:EECDH+AES256:RSA+AES256:EECDH+3DES:RSA+3DES:!MD5;

Sözdizimini kontrol edin ve sunucuyu yeniden başlatın:

nginx -t
systemctl restart nginx.service

3. HTTP Sıkı Aktarım Güvenliği (HSTS) Ekleme

Daha da fazla güvenlik için, Nginx yapılandırma dosyanıza HTTP Strict Transport Security başlığını ekleyin. Bu başlık, tarayıcıların yalnızca HTTPS bağlantılarını kullanmasını sağlar.

Nginx yapılandırma dosyasında:

add_header Strict-Transport-Security "max-age=15768000; includeSubDomains" always;

Sözdizimini kontrol edin ve sunucuyu yeniden başlatın.

4. HTTP/2’nin doğru çalışıp çalışmadığını kontrol etme.

HTTP/2’yi curl komutunu kullanarak test edebilirsiniz:

curl -I -L https://ваш_домен

Sunucu yanıtı HTTP/2’den bahsetmelidir.

HTTP/2 desteğini kontrol etmek için Google Chrome ve geliştirici araçlarını da kullanabilirsiniz.

Artık web siteniz HT TP protokolünün daha hızlı ve daha güvenli bir sürümü olan HTTP/2 ile çalışmaya hazır 🚀.

Sunucunuzu her zaman güncel ve güvenli tutmayı unutmayın. İyi şanslar!!!!

Ayrıca okuyun:

Sorular ve cevaplar

HTTP/1.1 yerine HTTP/2 kullanmanın faydaları nelerdir?

HTTP/2, çoklama ve başlık sıkıştırma gibi özelliklerle geliştirilmiş performans, yerleşik şifreleme yoluyla artırılmış güvenlik ve modern web teknolojileri için geliştirilmiş destek dahil olmak üzere bir dizi avantaj sunar.

HTTP/2 desteğini yapılandırırken SSL/TLS’yi etkinleştirmem gerekir mi?

Evet, HTTP/2 desteğini yapılandırırken SSL/TLS’yi etkinleştirmek, istemciler ve sunucu arasında güvenli iletişim sağlamak için gereklidir. SSL/TLS şifrelemesi, hassas verileri müdahaleye ve yetkisiz erişime karşı korur.

HTTP/2 desteğini Ubuntu’nun eski sürümlerinde yapılandırabilir miyim?

HTTP/2 desteğini Ubuntu’nun 16.04 gibi eski sürümlerinde yapılandırmak teknik olarak mümkün olsa da, optimum uyumluluk ve destek için Ubuntu 18.04 veya sonraki sürümleri kullanmanız önerilir.

HTTP/2’nin Nginx sunucumda etkin olup olmadığını nasıl kontrol edebilirim?

Nginx sunucunuzda HTTP/2’nin etkin olup olmadığını curl gibi araçları veya çevrimiçi HTTP/2 test hizmetlerini kullanarak kontrol edebilirsiniz. Alternatif olarak, Nginx sunucu günlüklerini incelemek, istemci bağlantıları tarafından kullanılan protokol sürümü hakkında size bir fikir verebilir.

HTTP/2 desteğini etkinleştirmek ek sunucu kaynakları gerektirir mi?

HTTP/2 desteğini etkinleştirmek, protokolün artan karmaşıklığı nedeniyle HTTP/1.1’e göre biraz daha fazla sunucu kaynağı gerektirebilir. Ancak, performans avantajları genellikle minimum kaynak gereksiniminden daha ağır basar.

HTTP/2 desteğini yapılandırdıktan sonra gerekirse HTTP/1.1’e geri dönebilir miyim?

Evet, gerekirse Nginx yapılandırma ayarlarınızı değiştirerek HTTP/1.1’e geri dönebilirsiniz. Ancak, herhangi bir değişiklik yapmadan önce sitenizin uyumluluğunu ve performansını iyice test etmeniz önerilir.

Yazar Hakkında

Andrii Kostashchuk

Andrii, farklı platformlar ve sistemler için çeşitli dillerde programlama deneyimine sahiptir. İnternet alanında 8 yıldan fazla zaman geçirmiş ve çeşitli CMS'lerle çalışmıştır: Opencart, Drupal, Joomla ve tabii ki en popüler içerik yönetim sistemi WordPress.

Tüm Makaleleri Görüntüle