HTTP/2’ye Neden Geçmelisiniz

Google Resmen Uyardı: Gizli Mobil Yönlendirmeler
26 Kasım 2015
301 Yönlendirme Haritası Nasıl Oluşturulur?
5 Aralık 2015

HTTP/2’ye Neden Geçmelisiniz

Google sözcülerinden birisi Google botlarının yakında HTTP/2’yi destekleyeceğini belirtti. Peki ama HTTP/2 nedir ve SEO hizmeti verenler için bu ne anlama gelmelidir? Bu yazının içeriği, bu iki sorunun cevabı ile şekillenecektir.

http2

Eğer web sitenizin daha hızlı yükleneceğini, sunucunuzun daha az kaynak kullanacağını, site yapımcılarınızın site hızını yükseltecek ayarlamalar için zaman harcamak zorunda olmayacağını ve ufak bir değişiklik ile tüm arama sıralamalarınızda yükselme sağlayabileceğini söylesek sanırım bu yazı baya bir ilginizi çekecektir. Bu cümle ise gerçek olmak için fazla iyi diye de düşünebilirsiniz.

Ancak o cümle gayet doğrudur. Web teknolojinin 20 yıllık geçmişinde en büyük gelişmelerden birisi bu konudur ve Web’in geleceği burada yatmaktadır. Fakat görülüyor ki SEO hizmeti verenlerin oluşturdukları topluluklar bunun hakkında pek konuşmuyorlar.

Google Webmaster Central Hangout’da Google çalışanı John Mueller aşağıdaki videoda 3. dakikadan itibaren Google botlarının henüz http/2’yi okuyamadığını ancak bunun üzerinde çalıştıklarını ve bu çalışmanın bu yıl sonu veya 2016 yılının başlarında kullanılır hale geleceğini belirtmiştir.

Videoda Mueller ayrıca, HTTP/2’nin en büyük avantajlarından birisinin sunucuya yapılan talepleri toplu olarak gönderebilmesi olduğunu belirtti. Yani bir sayfayı yüklemeye çalıştığınızda o sayfadan CSS, resim ve video gibi gömülü dosyalar için ayrı ayrı talep gider sunucuya HTTP/1.1’de. Ancak HTTP/2’de bu talepler tek partide gidebilecek.

HTTP/2 daha iyi kullanıcı deneyimi sağlayacak müthiş bir hız artışı sağlamanın da içinde olduğu bir çok avantajı için HTTP’ye geçmelisiniz. Hız artışının yanında bir çok daha potansiyel avantaj hakkında aşağıda bilgi bulabilirsiniz.

HTTP/2 Nedir?

HTTP/2 İnternet Mühendisliği Çalışma Kolu (Internet Engineering Task Force) tarafından sağlanan ve 1999’da tasarlanan http/1.1’in yerine gelen bir yeni sürümdür. Web dünyası geliştikçe HTTP/2’ye duyulan ihtiyaç da artmıştı. Bu güncel sürüm verimlilik, hız ve güvenlik gibi bir çok avantaj getirmiştir.

HTTP/2 Nereden Geliyor?

HTTP/2 büyük oranda Google’ın kendi prokotolü olan ve 2016 yılı içinde onaylanacak olan SPDY’yi temel almaktadır.  SPDY hali hazırda http/2’de bulunan bir çok özelliği barındırmaktadır ve geçmişe uyumlu tutularak geliştirmeyi zor olsa da başarmıştır. SPDY, http/2’de bulunan birçok kavramı denemiştir.

HTTP/2 İle Gelen Ana Geliştirmeler

  • Tekil Bağlantı: Sunucuya siteyi yüklemek için sadece tek bağlantı kullanılmıştır ve üstelik bu bağlantı site açık kaldığı sürece açık kalacaktır. Bu da çoklu TCP(İletim Kontrol Protokolü) bağlantısı kurmak için ihtiyaç duyulan gidiş-dönüş sayısını azaltacaktır.
  • Çoklayıcı: Aynı anda ve aynı bağlantılar çoklu taleplere izin vermektedir. Daha önce HTTP/1.1’de her transfer talebi öncekinin tamamlanmasını beklemek zorundaydı.
  • Sunucu İleriye Alma: Ek kaynaklar ziyaretçiye gelecek kullanım için gönderilebilir.
  • Öncelik Verme: Talepler, sunucun yüksek önceliğe sahip kaynakları daha hızlı teslim etmesine yarayan bağımlılık seviyelerine atanırlar.
  • İkili Sistem: HTTP/2 bir sunucu için çözümlemeyi daha kolay, daha yoğun ve daha az hataya yaktın hale getiriyor. Yazıları bilgisayarın ana dili olan ikili sisteme çevirmek için ek zaman kaybına gerek kalmıyor.
  • Header Sıkıştırma: (Bakınız: http://yazilimcorbasi.blogspot.com.tr/2012/07/http-header-parametreleri.html)HTTP/2 işletim yükünün düşüren HPACK sıkıştırmasını kullanıyor.

HTTP/2 ile öncekinin farkını gömülü resimlerle kolayca görebileceğiniz bir çok demo sitesi vardır. Bu demo siteleri ile HTTP/1.1’in resimleri yüklerken ki gecikme süresini gözle görülür seviyede gözlemleyebilirsiniz. Bu süre özellikle mobil kullanıcılar için oldukça avantajlıdır. Demo sitelerinden iki tanesi şunlardır:

HTTP/2’yi Neler Destekliyor?

Can I Use sitesinin verilerine göre Türkiye’deki tarayıcıların % 72.3’ü ve tüm dünyadaki tarayıcıların %61.7’si HTTP/2 protokülünü desteklemektedir. Buna ek olarak Windows 10’daki İnternet Explorler 11 sadece HTTP/2’yi desteklemektedir ve Chrome, Mozilla ve Opera HTTPS üzerinde sadece HTTP/2’yi desteklediğini bilmek gerekir.

Google Analytics’de HTTP/2.2 ile web sitenizin nasıl etkileneceğini gözlemlemek için Audience > Technology > Browser & OS yolunu izleyebilir ve diğerleri ile karşılaştırma yapabilirsiniz.

Ayrıca en büyük sunucu yazılımlarından olan Apache, IIS ve NGINX hali hazırda zaten HTTP/2’yi desteklemektedir. MaxCDN ve Akamai gibi bazı CDN platformları da HTTP/2’yi desteklemektedir.

HTTP/2’li HTTPS

HTTPS, Secure HTTP açılımına sahiptir ve güvenli HTTP manasına gelir. HTTP/2 hem güvenli hem de güvenli olmayan bağlantıları desteklerken, Firefox ve Chrome gibi tarayıcılar ise sadece HTTPS üzerinde http/2’yi desteklemektedir. Bu da demek oluyor ki http/2 ile fayda sağlamak isteyen bazı siteler HTTPS üzerinde sunulmak zorundadırlar.

Ancak 3 Aralık 2015’den itibaren açık kaynak kodlu güvenlik sertifikası sunan Let’s Encrypt gibi bir platform vardır. Bu siteyi kullanarak herhangi bir ücret ödemeden güvenlik sertifikası edinebilirsiniz. Bu site daha güvenli bir web ortamı sunmak için karşılık gütmeyen bir yapı oluşturmuştur.

HTTP/2’nin Kullanıcılar İçin Faydaları

Bu sorununun yanıtı hız olacaktır. Hız daha iyi bir kullanıcı deneyimi için oldukça önemlidir. Zaman geçtikçe insanlar yeni protokollerin sınırlarını öğreneceklerdir, bu nedenle kullanıcılar mutlaka http/2 hızı ile tanışmalıdır.

HTTP/2 Geliştiriciler İçin Ne Anlama Geliyor?

HTTP/1.1 ile birlikte gelen bazı hız artırıcı yöntemlere http/2.2 ile artık ihtiyaç yoktur. Bu optimizasyon geliştirme süresi için büyük avantaj sağlamıştır ve hız ve dosya yüklemedeki sorunları çevrelemiştir ancak bu optimizasyon da bazı sorunları getirmiştir.

  • Alan Adı Parçaları: Daha çok bağlantı için çoklu alt alan adlarından dosya yükleme kurulabilir. Bu paralel dosya transferi sunucuya ek yük getirebilir.
  • Resim Tayfları: Talepleri düşürmek için resim kombinasyonu kullanılabilir. Geniş resimler için ek RAM yükü sorun olacaktır.
  • Kombine Dosyalar: CSS ve JS sunucuya gönderilen talep sayısını azaltmak için sık sık kombine edilir. Bununla kullanıcı her dosyayı çalıştırılabilir olmadan önce onu beklemek zorunda kalır ve bu da fazladan Ram harcar.
  • Satır İçi: CSS veya JS kodu, hatta resimler bile direk olarak HTML’ye yerleştirilir, bu da bağlantıları azaltır ancak ek RAM harcar ve sayfanın tamamı yüklenene kadar sayfayı oluşturmaz.
  • Çerezsiz Alan Adları: CSS, JS ve resim gibi statik kaynaklar çerez gerektirmez, bunun için bir çok webmaster bunları bant genişliği ve zamanı korumak için bir çerezsiz alan adından göndermeye başladı. http/2 ile header kısımları( çerezlerde dahil) sıkıştırılacak, bu sayede http/1.1 ile kıyaslandığında talebin boyutu baya düşecek.

Sunucular İçin http/2 ile Gelen Yenilikler

Yukarıda bahsedilen birçok yeni özellik ile tarayıcılar üzerine çok sayıda bağlantı kurularak ekstra yük bindi. Bu bağlantı ile alakalı teknikler artık http/2 ile gerekli değildir. Sonuç ise daha az bant genişliği ihtiyacı, daha az ağ ek yükü ve daha az sunucu hafıza kullanımı olmuştur.

Mobil cihazlarda, çoklu TCP bağlantıları mobil ağ ile talep paketlerinin düşüp yeniden yüklenme taleplerinin oluşmasına sebep olan bir takım sıkıntılara sebep olabiliyordu. Ek talepler sadece sunucu yüküne ekleniyordu.

http/2 kendi başına sunucular için fayda sağladı. Daha az TCP bağlantısı ile buna neden oldu.

HTTP/2 SEO hizmeti verenler için ne anlama geliyor?

Google botlarının http/2 protokolünü desteklemeye başlaması ile birlikte, bu protokolü kullanan web siteleri daha hızlı oldukları için tüm sıralamalarında pozitif etkileneceklerdir.  Bunun yanında dünyada en çok kullanılan tarayıcılar arasında olan Chrome ve Mozilla HTTPS üzerinde sadece http/2 protokolünü kullanacağı için bu protokolü kullanmayan web siteleri bu eksiklikten daha fazla etkilenecektir.

Yukarıda belirttiğimiz son ifade nedeniyle eğer HTTPS yapısını düzgün yapmayan web siteleri geçici veya kalıcı şekilde sıralama kaybına uğrayacaktır.

HTPS yapısına geçerken karşılaşılacak ilk problem muhtemelen yönlendirmeler olacaktır. Sadece 301 yerine 302 yönlendirme yapılması değil, eski linklerden gözden kaçanlar ve doğru link zincirini oluşturamamak problem oluşturabilir. Bunlar ile iç linkler, dış linkler, karışık içerikler, kopya içerikler, canonicalization etiketleri gibi birçok sorun yeniden düzenlemeye ihtiyaç duyacaktır.

Google sıralama faktörlerinin yanında bir diğer önemli şey ise sitenizin güvenli olmasıdır. Birçok insan güvenli bir siteden güvenli olmayanına headerlardaki yönlendirilen veri akışının düştüğünü fark etmiyor. Bu yüzden mutlaka HTTPS yapısına geçmelisiniz.

Birçok Seo hizmeti uygulayıcısı geçmişte insanları sitelerine bağlamak için site hızlandırma yöntemleri aradı. Bu dönüşüm oranı dediğimiz hadise için oldukça faydalıydı. http/2 ise buna direk kendi yapısı ile yardımcı oluyor, bunu unutmamak gerekir.

HTTP/2’ye geçmek için ne yapmam gerekiyor?

Bunu site sağlayıcısının değil, sunucu sağlayıcısının yapması gerekir. Eğer sunucuda kullanılan platformlar http/2’yi destekliyorsa, sunucuyu güncelleyerek http/2’ye geçilebilir. Ancak eğer linklerini HTTPS yapısına taşımadıysanız, bunun için ek bir 301 link yönlendirme yapmalısınız.

Gürkan
Gürkan
Mühendislik öğrencisi olarak başladığı SEO çalışmalarına halen Seoturuncu bünyesinde devam etmektedir.